|
在 MySQL 中,SQL 查询的执行顺序通常按照以下顺序进行:
- FROM:从指定的表中选择数据。
- WHERE:对数据进行筛选,只选择满足条件的行。
- GROUP BY:按照指定的列对数据进行分组。
- SELECT:选择要返回的列或表达式。
- HAVING:对分组后的数据进行筛选,只选择满足条件的分组。
- UNION [ALL]
- ORDER BY:对结果进行排序。
- LIMIT:限制返回的行数(也称offset)。
请记住,这是一般情况下的执行顺序,并不一定适用于所有情况。优化器可能会根据查询的具体条件和表的索引情况进行优化,改变执行顺序以提高性能。
- 根据上面介绍的 select 与 having 的顺序,下面①中的分组语句是正确的, 它等同于 ②。<br>① select enterprise_id, count(*) as total from enterprise_agreement group by enterprise_id having total > 10<br>② select enterprise_id, count(*) as total from enterprise_agreement group by enterprise_id having count(*) > 10<br><br><br>
复制代码 来源:https://www.cnblogs.com/buguge/p/18281985
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|