如何选择一个字段与存在 MAX() 的字段对应?
为此,您可以将子查询与聚合函数 MAX() 结合使用。我们首先创建一个表 -
mysql> create table DemoTable -> ( -> ProductId int, -> ProductAmount int -> ); Query OK, 0 rows affected (0.78 sec)
使用 insert 命令在表中插入一些记录 -
mysql> insert into DemoTable values(1001,7895); Query OK, 1 row affected (0.32 sec) mysql> insert into DemoTable values(1003,8903); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable values(1010,7690); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable values(2010,8450); Query OK, 1 row affected (0.12 sec)
使用 select 语句显示表中的所有记录 -
mysql> select *from DemoTable;
这将产生以下输出 -
+-----------+---------------+ | ProductId | ProductAmount | +-----------+---------------+ | 1001 | 7895 | | 1003 | 8903 | | 1010 | 7690 | | 2010 | 8450 | +-----------+---------------+ 4 rows in set (0.00 sec)
以下是查询选择对应于 max() 中字段的字段 -
mysql> select *from DemoTable -> where ProductAmount=( select max(ProductAmount) from DemoTable);
这将产生以下输出 -
+-----------+---------------+ | ProductId | ProductAmount | +-----------+---------------+ | 1003 | 8903 | +-----------+---------------+ 1 row in set (0.05 sec)
广告