本文會提到52條sql語句效能優化策略。
1、對查詢進行優化,應盡量避免全表掃瞄,首先應考慮在where及order by涉及的列上建立索引。
2、應盡量避免在where子句中對字段進行null值判斷,建立表時null是預設值,但大多數時候應該使用not null,或者使用乙個特殊的值,如0,-1作為預設值。
3、應盡量避免在where子句中使用!=或<>操作符,mysql只有對以下操作符才使用索引:<,<=,=,>,>=,between,in,以及某些時候的like。
4、應盡量避免在where子句中使用or來連線條件,否則將導致引擎放棄使用索引而進行全表掃瞄,可以使用union合併查詢:select id from t where num=10 union all select id from t where num=20。
5、in和not in也要慎用,否則會導致全表掃瞄,對於連續的數值,能用between就不要用in了:select id from t where num between 1 and 3。
6、下面的查詢也將導致全表掃瞄:select id from t where name like『%abc%』或者select id from t where name like『%abc』若要提高效率,可以考慮全文檢索。而select id from t where name like『abc%』才用到索引。
7、如果在where子句中使用引數,也會導致全表掃瞄。
8、應盡量避免在where子句中對字段進行表示式操作,應盡量避免在where子句中對字段進行函式操作。<
SQL語句優化 一 (52)
格式 mysql show session global status 其中 session 預設 表示當前連線,global表示自資料庫啟動至今 mysql show status mysql show global status mysql show status like com mysql ...
SQL 語句的優化策略
在sql語句優化過程中,我們經常會用到hint,現總結一下在sql優化過程中常見oracle hint的用法 1.all rows 表明對語句塊選擇基於開銷的優化方法,並獲得最佳吞吐量,使資源消耗最小化.例如 select all rows emp no,emp nam,dat in from bs...
MySql優化sql語句效能
一.優化方面 可以從下面2個方面進行優化 1.減少io次數 2.減少cpu計算次數 二.常見sql命令誤區 1.count 1 和count primary key 優於 count 實際上count 計算操作做了優化 2.select a,b from 比 select a,b,c from 可以...