- T-SQL 教程
- T-SQL - 主页
- T-SQL - 概述
- T-SQL - 数据类型
- T-SQL - 创建表
- T-SQL - 删除表
- T-SQL - INSERT 语句
- T-SQL - SELECT 语句
- T-SQL - UPDATE 语句
- T-SQL - DELETE 语句
- T-SQL - WHERE 子句
- T-SQL - LIKE 子句
- T-SQL - ORDER BY 子句
- T-SQL - GROUP BY 子句
- T-SQL - DISTINCT 子句
- T-SQL - 联接表
- T-SQL - 子查询
- T-SQL - 存储过程
- T-SQL - 事务
- T-SQL - 索引
- T-SQL - 函数
- T-SQL - 字符串函数
- T-SQL - 日期函数
- T-SQL - 数值函数
- T-SQL 有用资源
- T-SQL - 快速指南
- T-SQL - 有用资源
- T-SQL - 讨论
T-SQL - GROUP BY 子句
SQL Server GROUP BY 子句与 SELECT 语句一起使用,将相同数据归组。
GROUP BY 子句紧接 SELECT 语句的 WHERE 子句,之前是 ORDER BY 子句。
语法
以下为 GROUP BY 子句的基本语法。GROUP BY 子句必须紧接 WHERE 子句中的条件,并在使用 ONE 时必须位于 ORDER BY 子句之前。
SELECT column1, column2 FROM table_name WHERE [ conditions ] GROUP BY column1, column2 ORDER BY column1, column2
示例
考虑 CUSTOMERS 表正在记录下列内容 -
ID NAME AGE ADDRESS SALARY 1 Ramesh 32 Ahmedabad 2000.00 2 Khilan 25 Delhi 1500.00 3 kaushik 23 Kota 2000.00 4 Chaitali 25 Mumbai 6500.00 5 Hardik 27 Bhopal 8500.00 6 Komal 22 MP 4500.00 7 Muffy 24 Indore 10000.00
如果您想了解每位客户的总薪水,则将进行以下 GROUP BY 查询。
SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS GROUP BY NAME;
上述命令将生成以下输出。
NAME sum of salary Chaitali 6500.00 Hardik 8500.00 kaushik 2000.00 Khilan 1500.00 Komal 4500.00 Muffy 10000.00 Ramesh 2000.00
现在考虑下列 CUSTOMERS 表,其中有记录带重复名称。
ID NAME AGE ADDRESS SALARY 1 Ramesh 32 Ahmedabad 2000.00 2 Khilan 25 Delhi 1500.00 3 kaushik 23 Kota 2000.00 4 Chaitali 25 Mumbai 6500.00 5 Hardik 27 Bhopal 8500.00 6 Komal 22 MP 4500.00 7 Muffy 24 Indore 10000.00
如果我们想了解每位客户的总薪水,则将进行 GROUP BY 查询。
SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS GROUP BY NAME
上述命令将生成以下输出。
NAME sum of salary Hardik 8500.00 kaushik 8500.00 Komal 4500.00 Muffy 10000.00 Ramesh 3500.00
广告