SQL Sever学习笔记四——分组—GROUP BY 子句
发布日期:2021-05-07 08:52:03 浏览次数:13 分类:技术文章

本文共 841 字,大约阅读时间需要 2 分钟。

分组—GROUP BY子句

1.格式:`

select 
<列名1>
,
<列名2>
,...from
<表名>
group by
<列名1>
,
<列名2>
,...;

GROUP BY 子句,BY子句中指定的列称为聚合键或分组列

2.功能:把表中的记录按照字段分成不同的组

3.实例演示:

--按照商品种类分组,并统计每组数据行数select product_type,count(*) from Productgroup by product_type;--当聚合键中包含null时,也会将null作为一组特定的数据归为一类select purchase_price,count(*)from Productgroup by purchase_price;

结果:

在这里插入图片描述

--where与group by 结合,先根据where子句指定的条件进行过滤,然后再进行汇总处理select purchase_price,count(*)from Productwhere product_type='衣服'group by purchase_price;

结果:

在这里插入图片描述

语句书写顺序:select→from→where →group by

GROUP BY 和WHERE并用时select语句的执行顺序:

from→where→group by→select

注意:

1.在使用COUNT这样的聚合函数时,SELECT子句中只能存在以下三种元素:常数,聚合函数,GROUP BY子句中指定的列名即聚合键。

2.select的列一定要包含在group by的列(聚合键)之中

3.在GROUP BY子句中不能使用别名

4.group by的显示结果是随机的;

5.WHERE子句中不能使用聚合函数

6.聚合函数可以在SELECT子句、HAVING子句和ORDER BY 子句中使用

更多详细内容见

上一篇:SQL Sever 学习笔记五——过滤,抽取指定条件数据——WHERE子句
下一篇:SQL Sever 学习笔记三——聚合查询

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年04月08日 14时36分58秒