SQL Server GROUP BY子句與SELECT語(yǔ)句協(xié)作使用,以將相同的數(shù)據(jù)分組。
GROUP BY子句位于SELECT語(yǔ)句中的WHERE子句之后,位于ORDER BY子句之前。
以下是GROUP BY子句的基本語(yǔ)法,GROUP BY子句必須遵循WHERE子句中的條件,并且必須在使用ORDER BY子句之前。
SELECT column1, column2 FROM table_name WHERE [ conditions ] GROUP BY column1, column2 ORDER BY column1, column2
請(qǐng)參考具有以下記錄的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
如果你想知道每個(gè)客戶的工資總額,那么可以使用以下的GROUP BY查詢方式:
SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS GROUP BY NAME;
上述命令將產(chǎn)生以下結(jié)果集:
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
現(xiàn)在讓我們考慮存在重復(fù)名稱的情況,請(qǐng)參考具有以下記錄的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
如果我們想知道每個(gè)客戶的工資總額,那么可以使用以下的GROUP BY查詢方式:
SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS GROUP BY NAME
上述命令將產(chǎn)生以下結(jié)果集:
NAME sum of salary Hardik 8500.00 kaushik 8500.00 Komal 4500.00 Muffy 10000.00 Ramesh 3500.00
更多建議: