SQL语言——分组数据概念及实例详细解读

1 数据分组

      从上一章知道,SQL聚集函数可用来汇总数据。这使我们能够对行进 行计数,计算和与平均数,获得最大和最小值而不用检索所有数据。 目前为止的所有计算都是在表的所有数据或匹配特定的WHERE子句的 数据上进行的。提示一下,下面的例子返回供应商1003提供的产品数目:

      但如果要返回每个供应商提供的产品数目怎么办?或者返回只提供 单项产品的供应商所提供的产品,或返回提供10个以上产品的供应商怎 么办? 这就是分组显身手的时候了。分组允许把数据分为多个逻辑组,以 便能对每个组进行聚集计算。

2 创建分组

      分组是在SELECT语句的GROUP BY子句中建立的。理解分组的最好办法是看一个例子:

     上面的SELECT语句指定了两个列,vend_id包含产品供应商的ID, num_prods为计算字段(用COUNT(*)函数建立)。GROUP BY子句指 示MySQL按vend_id排序并分组数据。这导致对每个vend_id而不是整个表 计算num_prods一次。从输出中可以看到,供应商1001有3个产品,供应商 1002有2个产品,供应商1003有7个产品,而供应商1005有2个产品。

     因为使用了GROUP BY

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值