SQL 查询的执行顺序是怎样的? 好像这个问题应该很好回答,毕竟自己已经写了无数个 SQL 查询了,有一些还很复杂的。还装不了这个逼了?! 但事实是,我仍然很难确切地说出它的顺序是怎样的。 言归正传,SELECT语句的完整语法如下: 1. SELECT 2. DISTINCT 3. FROM 4. JOIN 5. ON 6. WHERE 7. GROUP BY 8. HAVING 9. ORDER BY 10.LIMIT 然而其执行顺序却是: FROM # 笛卡尔积ON # 对笛卡尔积的虚表进行筛选JOIN # 指定join,用于添加数据到on之后的虚表中,例如left