mysql 查询语句执行顺序
时间: 2023-08-09 16:08:24 浏览: 127
sql和MySQL的语句执行顺序分析
MySQL查询语句的执行顺序如下:
1. FROM:指定要查询的表。
2. JOIN:根据指定的条件,将两个或多个表合并为一个结果集。
3. ON:在执行JOIN之前,根据指定的条件筛选表。
4. WHERE:对查询结果进行筛选,只保留满足指定条件的行。
5. GROUP BY:将结果集按照指定的列进行分组。
6. WITH ROLLUP:按照GROUP BY的列对结果集进行汇总,并添加一行用于总计或小计。
7. HAVING:对分组后的结果进行筛选,只保留满足指定条件的分组。
8. SELECT:选择要查询的列。
9. DISTINCT:对查询结果进行去重。
10. UNION:将两个或多个查询结果集合并为一个结果集。
11. ORDER BY:按照指定的列对结果集进行排序。
12. LIMIT:指定查询结果的行数限制。
所以,MySQL会先执行FROM和JOIN,然后执行ON,接着执行WHERE,然后是GROUP BY、WITH ROLLUP、HAVING、SELECT、DISTINCT、UNION、ORDER BY和LIMIT。\[1\]\[2\]\[3\]
#### 引用[.reference_title]
- *1* *2* [Mysql中查询语句的执行顺序](https://blog.csdn.net/mysnsds/article/details/125313346)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [mysql语句执行顺序](https://blog.csdn.net/qq_41045651/article/details/130068288)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文