在MySQL中显示来自对应重复ID的最高数量

要显示来自对应重复ID的最高金额,请MAX()与GROUP BY子句一起使用-

mysql> create table DemoTable2003
(
   CustomerId int,
   Amount int
);

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable2003 values(101,560);
mysql> insert into DemoTable2003 values(102,1080);
mysql> insert into DemoTable2003 values(101,570);
mysql> insert into DemoTable2003 values(102,870);
mysql> insert into DemoTable2003 values(101,460);

使用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)