萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> sql group by 用法與group by 語法

sql group by 用法與group by 語法

sql 與group by 是用來數據分組的,下面我們看數據庫表稱為EmployeeHours存放每一個公司員工的 日常 時間:

Employee Date Hours John Smith 5/6/2004 8 Allan Babel 5/6/2004 8 Tina Crown 5/6/2004 8 John Smith 5/7/2004 9 Allan Babel 5/7/2004 8 Tina Crown 5/7/2004 10 John Smith 5/8/2004 8 Allan Babel 5/8/2004 8 Tina Crown 5/8/2004 9

如果公司經理想要得到的所有員工的所有工作時間疊加,他需要執行下列SQL語句:

SELECT SUM (Hours)
FROM EmployeeHours

但是,如果經理想要得到他的員工為每個所有時間的總和?
為此,他需要修改他的SQL查詢和使用SQL的GROUP BY語句:

SELECT Employee, SUM (Hours)
FROM EmployeeHours
GROUP BY Employee

The result of the SQL expression above will be the following:

Employee Hours John Smith 25 Allan Babel 24 Tina Crown 27

該SQL的GROUP BY子句可以用於其他SQL聚合函數,例如的SQL的AVG:

SELECT Employee, AVG(Hours)
FROM EmployeeHours
GROUP BY Employee

Employee Hours John Smith 8.33 Allan Babel 8 Tina Crown 9

 在我們的雇員表的日期專欄中,我們也可以 分組

SELECT Date, SUM(Hours)
FROM EmployeeHours
GROUP BY Date

Here is the result of the above SQL expression:

Date Hours 5/6/2004 24 5/7/2004 27 5/8/2004 25

copyright © 萬盛學電腦網 all rights reserved