找出 average 並顯示重複 id 的最大平均值?


為此,請使用 AVG()。要找到最大平均值,請使用 MAX() 並按 id 分組。讓我們先來建立一個表 -

mysql> create table DemoTable
   -> (
   -> PlayerId int,
   -> PlayerScore int
   -> );
Query OK, 0 rows affected (0.55 sec)

使用 insert 命令在表中插入一些記錄 -

mysql> insert into DemoTable values(1,78);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(2,82);
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable values(1,45);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values(3,97);
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable values(2,79);
Query OK, 1 row affected (0.12 sec)

使用 select 語句從表中顯示所有記錄 -

mysql> select *from DemoTable;

這將生成以下輸出 -

+----------+-------------+
| PlayerId | PlayerScore |
+----------+-------------+
|       1 |           78 |
|       2 |           82 |
|       1 |           45 |
|       3 |           97 |
|       2 |           79 |
+----------+-------------+
5 rows in set (0.00 sec)

這是在 MySQL 中查詢重複 id 的最大平均值所需的查詢 -

mysql> select PlayerId from DemoTable
   -> group by PlayerId
   -> having avg(PlayerScore) > 80;

這將生成以下輸出 -

+----------+
| PlayerId |
+----------+
|        2 |
|        3 |
+----------+
2 rows in set (0.00 sec)

已更新時間:2019 年 12 月 12 日

94 次瀏覽

開啟你的職業生涯

完成課程獲得認證

立即開始
廣告