zoukankan      html  css  js  c++  java
  • SQL中的坑

    一、where,group by,having

    --group by 和having 解释:前提必须了解sql语言中一种特殊的函数:聚合函数,
    例如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。
    
    having是分组(group by)后的筛选条件,分组后的数据组内再筛选
    where则是在分组前筛选
    
    where子句中不能使用聚集函数,而having子句中可以,所以在集合函数中加上了HAVING来起到测试查询结果是否符合条件的作用。
    即having子句的适用场景是可以使用聚合函数
    
    having 子句限制的是组,而不是行
    having 子句中的每一个元素也必须出现在select列表中。有些数据库例外,如oracle
    
    当同时含有 where 子句、group by 子句 、having 子句及聚集函数时,执行顺序如下:
    执行where子句查找符合条件的数据;
    使用group by 子句对数据进行分组;对group by 子句形成的组运行聚集函数计算每一组的值;最后用having 子句去掉不符合条件的组
  • 相关阅读:
    Linux_LEMP
    Linux_LEMP
    Linux_指令杂烩
    Linux_指令杂烩
    Linux_SELinux使用
    AWS S3存储基于Hadoop之上的一致性保证
    Ozone数据写入过程分析
    Ozone Datanode的分布式元数据管理
    聊聊Ozone的Topology Awareness
    Ozone数据探查服务Recon的启用
  • 原文地址:https://www.cnblogs.com/yuanninesuns/p/9850031.html
Copyright © 2011-2022 走看看