zoukankan      html  css  js  c++  java
  • HAVING子句

      HAVING子句用于指定对组进行过滤的谓词或逻辑表达式,这与WHERE阶段对单独的行进行过滤相对应。只有能让HAVING子句中的逻辑表达式为TRUE的组,HAVING阶段才会把这些组返回到下一个逻辑查询处理阶段。逻辑表达式计算结果为FALSE或UNKNOWN的组将被过滤掉。

      因为HAVING子句是在对行进行分组后处理的,所以可以在逻辑表达式中引用聚合函数。例如,在下面所示的代码中,HAVING子句使用了逻辑表达式COUNT(*)>1,意味着HAVING阶段过滤器只保留包含多行的组(雇员和订单年份)。

     SELECT empid,YEAR(orderdate) AS orderyear,COUNT(*) AS numorders
     FROM Sales.Orders
     WHERE custid = 71
     GROUP BY empid,YEAR(orderdate)
     HAVING COUNT(*) > 1
     ORDER BY empid,orderyear;
    

      

      前面提到GROUP BY阶段创建了16个雇员ID和订单年份组,其中有7个组只包含1行,所以在HAVING子句处理完后,只剩下9个组。

  • 相关阅读:
    python3下import MySQLdb出错问题
    循环单链表
    双端链表
    单链表
    静态链表
    hotspot目录结构
    volatile分析
    centos7 python环境安装
    jconsole连接本地进程报安全连接失败
    redis分布式锁
  • 原文地址:https://www.cnblogs.com/ShaYeBlog/p/2697140.html
Copyright © 2011-2022 走看看