点击上方SQL数据库开发,关注获取SQL视频教程
SQL专栏
SQL数据库基础知识汇总
SQL数据库高级知识汇总
GROUP BY 作用
GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。
GROUP BY 语法
SELECT column_name,
aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;
示例数据库
我们使用Customers表和Orders表来演示:
Customers表
Orders表
GROUP BY实例
查询居住在各个城市的客户分别有多少个。我们可以这样写SQL:
SELECT 城市,COUNT(*) AS 客户数量
FROM Customers
GROUP BY 城市
结果:
从上面我们可以看到,GROUP BY 将城市名称相同的客户聚集在一起,然后通过COUNT函数计算出了他们的数量。
GROUP BY 多表连接
查询每个城市有多少个订单产生。我们可以这样写SQL:
SELECT c.城市,COUNT(o.订单ID) AS 订单数量
FROM Customers c
LEFT JOIN Orders o ON c.客户ID=o.客户ID
GROUP BY c.城市
结果:
因为没有北京和杭州的用户购买产品,所以订单数量为0
批注
GROUP BY主要作用是用来进行分组聚合,也有时候会用来进行排重,与DISTINCT关键字作用类似。常用HAVING关键字一起使用,用来对分完组后的数据进一步的筛选,属于常用关键字之一。此外还经常与集合进行一起使用,这里不作扩展。
公众号内回复1,拉你进微信交流群
欢迎加入我们的知识星球『SQL数据库开发』
点击