本文将介绍如何分组数据,以便能汇总表内容的子集,这涉及两个新SELECT语句子句,分别是 GROUP BY 子句和HAVING子句。
分组是在SELECT语句的GROUP BY子句中建立的。
输入:
SELECT vend_id,COUNT(*) AS num_prods FROM products GROUP BY vend_id
输出:
vend_id | num_prods |
---|---|
1001 | 3 |
1002 | 2 |
1003 | 7 |
1005 | 2 |
分析:上面的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子句之前,需要知道一些重要规定:
如对本文有疑问, 点击进行留言回复!!
项目实战: CMDB自动化资产扫描(搞懂这个项目 算你没白学运维)
MySQL中建表时可空(NULL)和非空(NOT NULL)的用法详解
SSD原理及Pytorch代码解读——网络架构(二):特征提取网络及总体计算过程
网友评论