單表查詢的順序

select sex, count(Sex) as count from tch_teacher where id > 15 group by Sex having count > 5 order by Sex asc limit 1;

1-> from 表 : 首先拿到表tch_teacher

2-> where 條件 : 根據where後面的條件篩選一遍數據集合A

3-> group by 分組 : 對篩選出的數據A, 根據group by後面的列進行分組, 得到數據集B

4-> having 篩選 : 對數據集B進行進一步篩選, 得到數據集C

5-> select 數據 : 這裏有四步
第一步 : 根據select後面的列名, 去數據集C中取數據. 得到數據集D
第二步 : 對數據集D中的數據進行去重操作(這一步是建立在 sql中有distinct 情況下), 得到數據集E
第三步 : 對數據集E進行排序操作, 得到數據集F
第四步 : 對數據集F進行截取數據操作, 得到最終的數據集(執行 limit 10 操作)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章