T-SQL GROUP BY

17 Mar 2025 | 阅读 2 分钟

在 Transact SQL 中,GROUP BY 子句用于将数据安排成组。它位于查询中 SELECT 语句中的 WHERE 子句之后。它具有聚合函数(MAX、MIN、AVG、SUM 和 COUNT),可以按一个或多个列对结果进行分组。

GROUP BY 子句的语法如下:

GROUP BY 子句遵循 WHERE 子句中的条件,并引入 ORDER BY 子句。

示例

考虑具有以下记录的 CUSTOMERS 表 -

ID姓名年龄地址工资
01威廉·莎士比亚32卡拉奇7000.00
02Alpoura24伦敦3000.00
03Jackson34巴黎1200.00
04HarperMachmohan20纽约1500.00
05EllaDevgun22伊斯兰堡3400.00
06David Warner23土耳其4400.00
07梅森26沙特阿拉伯5050.00

如果要了解每个客户的工资总额,则以下将是 GROUP BY 查询。

该命令给出的输出如下。

姓名工资
威廉·莎士比亚7000.00
Alpoura3000.00
Jackson1200.00
Harper Machmohan1500.00
Ella Devgun3400.00
David Warner4400.00
梅森5050.00

让我们考虑以下 CUSTOMERS 表,该表具有具有不同名称的记录。

ID姓名年龄地址工资
01威廉·莎士比亚32卡拉奇7000.00
02Alpoura24伦敦3000.00
03Jackson34巴黎1200.00
04HarperMachmohan20纽约1500.00
05EllaDevgun22伊斯兰堡3400.00
06David Warner23土耳其4400.00
07梅森26沙特阿拉伯5050.00

如果要了解每个客户的工资总额,则生成以下 GROUP BY 查询。

该命令给出以下输出。

ID年龄工资
Alpoura247400.00
Ella Devgun223400.00
Harper Machmohan202700.00
梅森265050.00
威廉·莎士比亚3210000.00

下一个主题T-SQL Pivot & UnPivot