在 MySQL 中顯示對應重複 id 的最高金額


若要顯示對應重複 id 的最高金額,搭配 GROUP BY 子句使用 MAX() −

mysql> create table DemoTable2003
(
   CustomerId int,
   Amount int
);
Query OK, 0 rows affected (0.65 sec)

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

mysql> insert into DemoTable2003 values(101,560);
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable2003 values(102,1080);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable2003 values(101,570);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable2003 values(102,870);
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable2003 values(101,460);
Query OK, 1 row affected (0.12 sec)

使用 select 語句顯示錶中的所有記錄 −

mysql> select * from DemoTable2003;

這將產生以下輸出 −

+------------+--------+
| CustomerId | Amount |
+------------+--------+
|        101 |    560 |
|        102 |   1080 |
|        101 |    570 |
|        102 |    870 |
|        101 |    460 |
+------------+--------+
5 rows in set (0.00 sec)

以下是顯示對應重複 id 的最高金額的查詢 −

mysql> select CustomerId, max(Amount) from DemoTable2003
   group by CustomerId;

這將產生以下輸出 −

+------------+-------------+
| CustomerId | max(Amount) |
+------------+-------------+
|        101 |         570 |
|        102 |        1080 |
+------------+-------------+
2 rows in set (0.00 sec)

更新日期: 02-01-2020

769 次檢視

開啟你的職業生涯

完成課程即可獲得認證

開始
廣告