1、盡量避免全表掃瞄,應考慮在 where 及 order by 涉及的列上建立索引。
2、盡量避免在where子句中使用以下查詢,會導致放棄索引全表掃瞄。
3、is null :使用字段預設值代替
!=或<>操作符:
or :使用 union all 代替
in 和 not in:連續數值使用 between 代替in,或者使用 exists 代替 in
where name like 『%abc%』 :
where num/2=100 : 應該為 where num=100*2 ,不要在「=」左邊進行函式、算術運算或其他表示式運算
4、當索引列有大量資料重複時,sql查詢可能不會去利用索引。
5、乙個表的索引數最好不要超過6個,因為 insert 或 update 時有可能會重建索引,執行效率會下降。
6、用具體的字段列表代替「*」,不要返回用不到的任何字段。
.7、盡量避免大事務操作,提高系統併發能力。
8、在使用索引字段作為條件時,如果該索引是復合索引,那麼必須使用到該索引中的第乙個字段作為條件時才能保證系統使用該索引,否則該索引將不會被使用,並且應盡可能的讓字段順序與索引順序相一致盡量使用數字型字段,若只含數值資訊的字段盡量不要設計為字元型,這會降低查詢和連線的效能,並會增加儲存開銷。這是因為引擎在處理查詢和連線時會逐個比較字串中每乙個字元,而對於數字型而言只需要比較一次就夠了。
9、使用 varchar 代替 char ,長欄位儲存空間小,節省儲存空間,其次對於查詢來說,在乙個相對較小的字段內搜尋效率顯然要高些。
優化SQL的幾種方式
優化的目的 1 盡量保證索引能正確使用。2 盡量避免全域性搜尋。3 索引不是越多越好。方式 1 對查詢進行優化,應盡量避免全表掃瞄,首先應考慮在 where 及 order by 涉及的列上建立索引 2 應盡量避免在 where 子句中對字段進行 null 值判斷,否則將導致引擎放棄使用索引而進行全...
sql優化的幾種方式
一.為什麼要進行sql優化 我們開發專案上線初期,由於業務資料量相對較少,一些sql的執行效率對程式執行效率的影響不太明顯,而開發和運維人員也無法判斷sql對程式的執行效率有多大,故很少針對sql進行專門的優化,而隨著時間的積累,業務資料量的增多,sql的執行效率對程式的執行效率的影響逐漸增大,此時...
ListView的幾種優化方式
今天在接到千峰的 面試時,有點小激動,不過大腦也發熱,好多東西都想不起來了。畢竟那裡可是大神扎堆的地兒啊,mars 老羅,唉,想想都激動,激動歸激動,當被問的時候就有點小憂傷了,腦袋有點亂了,當問道listview的優化方式時,就有點沒頭緒了,想到啥說啥,好吧,下面就來簡單的說說我用到過的llist...