如何將 MySQL 返回的結果集分成組?


這可以透過在 SELECT 語句中使用 GROUP BY 子句來實現。我們可以使用 GROUP BY 子句指定一個列作為分組標準。由於指定的這個分組標準,在特定列中具有相同值的行的會被視為一個組。透過這種方式,MySQL SELECT 語句返回的結果集將被分成組。

示例

以下是一個很好的示例,可以幫助你理解它:

我們有一個名為“employees”的表,如下所示:

mysql> Select * from employees;
+------+-------------+--------+------------+
| id   | designation | Salary | DoJ        |
+------+-------------+--------+------------+
| 100  | Asst.Prof   | 50000  | 2016-06-15 |
| 300  | Prof        | 85000  | 2010-05-18 |
| 250  | Asso.Prof   | 74000  | 2013-02-12 |
| 400  | Prof        | 90000  | 2009-05-19 |
| 200  | Asst.Prof   | 60000  | 2015-05-11 |
+------+-------------+--------+------------+
5 rows in set (0.00 sec)

現在,藉助以下指令碼,我們將輸出分成組:

mysql> select designation, count(*), AVG(salary) from employees group by designation;
+-------------+----------+-------------+
| designation | count(*) | AVG(salary) |
+-------------+----------+-------------+
| Asso.Prof   | 1        | 74000.0000  |
| Asst.Prof   | 2        | 55000.0000  |
| Prof        | 2        | 87500.0000  |
+-------------+----------+-------------+
3 rows in set (0.00 sec)

以上查詢將結果集分成 Asso.Prof 組,總數為 1,平均工資為 74000;Asst.Prof 組,總數為 2,平均工資為 55000;Prof 組,總數為 2,平均工資為 87500。

更新時間: 2020年6月20日

893 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.