当前位置:   article > 正文

MYSQL 关键字 先后顺序

MYSQL 关键字 先后顺序

FROM

WHERE 

SELECT 

DISTINCT  MIN/MAX/COUNT/AVAGE/SUM

INNER/LEFT/RIGHT JOIN

GROUP BY

HAVING

ORDER BY 

LIMIT

From where 在select之前执行,所以在where中使用 select 中的 别名会报错,

此时 where 中的别名还没有创建

在order by中不会出现

HAVING 子句后面可以使用各种运算符来过滤聚合结果。常见的运算符包括:

  1. 比较运算符:

    • =:等于
    • != 或 <>:不等于
    • >:大于
    • <:小于
    • >=:大于等于
    • <=:小于等于
  2. 逻辑运算符:

    • AND:与
    • OR:或
    • NOT:非
  3. 其他运算符:

    • BETWEEN:在某个范围内
    • IN:在某个集合内
    • LIKE:匹配某个模式

例如,你可以使用以下方式来过滤聚合结果:

select d.department_id, count(e.employee_id) num

from employees e

RIGHT JOIN departments d ON e.department_id = d.department_id

GROUP BY

department_id

HAVING

-- count(e.employee_id) = 0; yes

-- count(num) = 0; no

在 SQL 中,HAVING 子句不能直接使用 SELECT 子句中的别名来进行聚合函数的计算。你需要直接在 HAVING 子句中使用原始的聚合函数表达式。 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号