在 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 次查看

开启你的职业生涯

完成课程即可获得认证

开始
广告