SQL優化點滴記錄

2021-08-22 18:17:47 字數 508 閱讀 7067

1、在where和order by 涉及的列上加索引;

2、引擎會放棄使用索引的情況:

(1)、避免where子句字段進行null值判斷;

(2)、避免where子句中使用!=或<>操作符;    

(3)、避免where子句中使用or。

3、慎用in 和not in,in和not in也會進行全表掃瞄;

4、like 子句盡量少用,也會全表掃瞄;

5、用 exists 代替 in 例如:    

select num from a where num in(select num from b)    

用下面的語句替換:    

select num from a where exists(select 1 from b where num=a.num)    ;

6、避免使用select *;

7、from  記錄條數多的放在左邊;

8、where 可以過濾最大數量記錄的條件放在 where 子句的末尾。

sql優化之慢sql優化實踐 點滴

sp order day current 表存在480w條資料 關聯sp service site表id的外來鍵sj site sp service site 表存在3w條資料 1 2 3 4 5 6 7 8 9 in的寫法 22秒 select from sp order day current ...

SQL點滴學習記錄(一)

alter table table name add column column name1 varchar 100 default null comment 注釋 add column column name2 varchar 100 default null comment 注釋 1 最近用的比...

SQL優化經歷記錄

1 關聯表的時候,欄位的順序最好按照表的索引的順序去寫,特別是關聯的表比較大的時候,效果特別明顯 2 如果乙個表比較大,且在儲存中的使用頻度很高,可以考慮建立臨時表,且建立索引。單錶的索參數量應該盡量控制在5個以內,並且單個索引中的字段數不超過5個。2 如果針對某個欄位的or是走索引的,針對多個欄位...