sql關鍵字執行的先後順序是:首先執行from語句;然後是where語句,group by語句;接著是having語句;最後是order by語句。
【推薦課程:#MySQL教學##】
sql關鍵字執行順序
例:select m.* from(select t.*,rownum r from (select id,name,e.username,e.realname from departments d ,employees e where d.manager=e.username(+) order by id desc ) t where rownum<=? ) m where r>? select m.*(select t.*,t.rownum r from( select a,b,c,d from table1 order by a desc ) t where rownum < = ? ) m where r > ?
標準的SQL 的解析順序為
(1)FROM 子句, 組裝來自不同資料來源的資料(2)WHERE 子句, 基於指定的條件對記錄進行篩選(3)GROUP BY 子句, 將資料分割為多個分組(4)使用聚合函數進行計算(5)使用HAVING 子句篩選分組(6)計算所有的表達式(7)使用ORDER BY 對結果集進行排序#例
在學生成績表中(暫記為tb_Grade),把"考生姓名"內容不為空的記錄依照"考生姓名" 分組, 並且篩選分組結果, 選出"總成績" 大於600 分的SQL 語句為:
select 考生姓名, max(总成绩) as max总成绩 from tb_Grade where 考生姓名 is not null group by 考生姓名 having max(总成绩) > 600 order by max总成绩
以上是sql關鍵字執行先後順序是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!