zoukankan      html  css  js  c++  java
  • 数据库系列之查询(3)

    什么是分组统计


    按水果的种类分组,然后分别汇总

    语法


    SELECT   <字段列表>   [聚合函数]
    FROM  表
    [WHERE]  条件
    GROUP BY  <字段列表>
    其中<字段列表>可以有多个字段,各字段用逗号隔开,它表示按哪些列进行分组。
    分组统计牢记:SELECT语句中除聚合函数外,所有列应写在Group By语句后面,否则将出现错误。

    示例


    统计结果集应包含“城市、性别和人数3列信息”。
    很明显应该按照City和Sex两列进行分组。
    分组后仍使用Count()聚合函数汇总行数。

    SELECT  City as 城市, Sex as 性别, Count(*)  as 人数 
    FROM Customers 
    Group By City, Sex

    使用HAVING子句对分组结果再次过滤
    继续考虑上面的查询,如果“要统计不同城市不同性别的会员个数,并且只显示会员个数大于2个的记录”如何处理呢?
    需要对分组后的数据进行筛选,  筛选条件Count(*) >=2。
    对分组后的数据进行筛选需要使用Having子句。

    SELECT  City as 居住城市, Sex as 性别, Count(*)  as 会员人数 
    FROM Customers
    Group By City, Sex
    HAVING Count(*) >= 2

    分组查询的过滤

    WHERE子句:
    从数据源中去掉不符合其搜索条件的数据
    GROUP BY子句:
    搜集数据行到各个组中,统计函数为各个组计算统计值
    HAVING子句:
    去掉不符合其组搜索条件的各组数据行
    where -> group by -> having

  • 相关阅读:
    Hive-1.2.1_05_案例操作
    Hive-1.2.1_04_DML操作
    Hive-1.2.1_03_DDL操作
    Hive-1.2.1_02_简单操作与访问方式
    Hive-1.2.1_01_安装部署
    Hadoop2.7.6_08_Federation联邦机制
    Hadoop2.7.6_07_HA高可用
    NFS服务搭建与配置
    Hadoop2.7.6_06_mapreduce参数优化
    Hadoop2.7.6_05_mapreduce-Yarn
  • 原文地址:https://www.cnblogs.com/cmhunter/p/4278957.html
Copyright © 2011-2022 走看看