sql查詢語句的書寫順序、執行順序及注意事項(優化策略)
阿新 • • 發佈:2019-01-08
查詢中用到的關鍵詞主要由6個,分別是:
select、from、where、group by、having、order by
書寫順序:
順序與上一行一致。不過其中select和from為必須,其他關鍵詞是可選
執行順序:
from、where、group by、having、select、order by
from:從哪張表檢索資料
where:設定條件,過濾表中資料
group by:將上面過濾出的資料,進行分組
having:對上面已經分組的資料進行過濾的條件
-------到此檢索的資料操作已經完畢,以下處理僅僅用來設定檢視規則-------
select:指定檢視結果集中的那個列或列的計算結果
order by:設定檢視返回資料的方式
注意事項:
(1)from後面的表關聯,解析是自右向左解析的(最後面的那個表為驅動表,儘量將資料量小的表放在後面來進行關聯,即用小表去匹配大表)
(2)where子句的執行順序不同資料庫順序不同:Oracle自右向左,mysql則是自左向右,但同樣的思想:把能篩選出小量資料的條件先執行,同樣用小表去匹配大表
(3)儘量少的使用having子句,因為很耗資源
(4)select子句中儘量地去指明地段名稱,少用*號
(5)order by子句同樣很耗資源,儘量少用,其執行順序為從左到右