整理了下MySQL查询语句的执行顺序。
(1) FROM
(2) ON
(3) JOIN
(4) WHERE
(5) GROUP BY
(6) WITH (CUBE|ROLLUP)
(7) HAVING
(8) SELECT
(9) DISTINCT
(10) ORDER BY
(11) LIMIT
FROM employees e
JOIN departments d ON e.dept_id = d.id
WHERE e.salary > 5000 AND d.location = 'NY'
GROUP BY d.name, e.position
GROUP BY d.name WITH ROLLUP
HAVING AVG(e.salary) > 6000
SELECT d.name, AVG(e.salary) as avg_sal
SELECT DISTINCT department
ORDER BY avg_sal DESC
FROM employees e
0
恐惧不是真实的,它只是对未来的一种自我暗示,是我们心灵的产物。-- 烟沙九洲
◀