zoukankan      html  css  js  c++  java
  • 使用Having子句

    Having 子句与where子句的功能类似,都是对行进行筛选。但是,where搜索条件是在分组操作之前对记录进行筛选,然后再由group BY 对筛选后符合条件的行进行分组;而Having搜索条件则是对分组操作之后得到的行进行筛选操作。在Having子句中可以包含聚合函数,而where子句不能。

    下面是WhereGroup ByHaving子句的正确顺序;

    1.Where 子句用来筛选From 子句中指定的操作所产生的行;

    2.Group By 子句用来分组Where子句的输出;

    3.Having 子句用来从分组的结果中筛选行。

    没有Group By子句的情况下,Having子句和Where子句功能完全相同,但是使用Where子句会更高效。因为Where 子句能够事先把不必要的数据过滤掉,从而减少了在执行select时数据处理量。但是,有些数据事先并不知道是否需要过滤掉,要根据结果才能确定,者时候就必须使用having子句解决

    use addinr
        Go
        Select proid,Sum(lin) as to
        from sales
        group By proid
        Having sum(lin)>$100000.00
    
    
    use addinr
        Go
        Select proid,Sum
        from sales
        where name=222 Having sum(lin)>$100000.00
  • 相关阅读:
    MySQL主从复制
    MySQL索引
    MySQL视图(view)
    MySQL表类型和存储引擎
    MySQL事务(三)
    MySQL事务(二)
    MySQL事务(一)
    MySQL事件调度器
    协同过滤推荐算法
    SVD奇异值分解
  • 原文地址:https://www.cnblogs.com/xiaowie/p/8675065.html
Copyright © 2011-2022 走看看