好的Sql語句也能提高效率(二)

2022-02-07 11:10:24 字數 1403 閱讀 8788

今天發現了一種可能比好的sql語句也能提高效率中的sql語句的格式好構建一點,就是多個insert語句,以『;』連線起來成乙個sql語句去執行,和之前的那種辦法應該是乙個型別的,就是這種方式在構造上面多了比較多重複的東西,就是insert前面的包括表結構的那些語句。不過相對來說這個格式更加好構建一些。

格式例子如下:

insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('3195', '4461', '8788', '4858', '1855')
insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('2850', '1674', '8560', '3476', '9881') ;
insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('7006', '2068', '8048', '2238', '8549') ;
insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('8719', '6579', '1240', '4777', '6843') ;
insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('4105', '9805', '6685', '1637', '1899') ;
insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('5869', '4243', '2965', '6978', '3251') ;
insert into testtable ( [column0],  [column1],  [column2],  [column3],  [column4] ) values ('9550', '7475', '9988', '7661', '2077')

現在的問題還是回到了構造sql語句上面了。通過取出來的源資料datatable和目標資料庫的表結構去構建insert語句。

發現這種情況只能適用於那種沒有二進位製字段的表,要是涉及到二進位製欄位的話這種拼接組合sql的方式就應該不適用了。有二進位製欄位的話還是得一條記錄一條記錄的執行插入。

唉,看樣子這條路走不通啊。再想別的辦法。

sql的簡單提高效率方法

少用in操作 效率極差 盡量用表關聯代替 select要指定列,不要 會讀入所有資料,而指定列則只提取涉及的列,減少io 盡量有where 減少讀取量 where操作列盡量有索引 加快查詢 mysql索引使用b tree資料結構對特定列額外組織存放,加快儲存引擎查詢記錄的速度,不需回表查詢資料的就是...

SQL高效率語句(二)

早晨起來就上,看到好貼的時候就記錄下來。主要記下來兩點 1.使用引數化產訊應該徹底,杜絕使用字串拼接。好處是可以防止sql注入式攻擊。2.引數化使用的時候應該制定資料型別和資料長度,這樣的話,可以減少sql執行計畫任務的次數。但是,以下幾個型別,則沒有必要指定資料長度 int,bigint,deci...

格式化 SQL 來提高效率

分類 0 原文出處 已格式化的sql並不比未格式化sql執行地更快。資料庫可能真的不太在意你是否把逗號放在每個欄位名稱的前面或後面。為幫助你更理智和成為一名高效的sql編寫者,我建議你遵循一些格式化的指導方針。在這篇文章裡,我將分享如何格式化sql語句來提高工作效率。我對生產力這樣定義,能夠從sql...