MySQL中某列的最大值所在的行
让我们了解如何在MySQL中找到包含特定列最大值的行-
注意:我们假设我们已经创建了一个名为“DBNAME”的数据库和一个名为“tableName”的表。
让我们看看如何使用MySQL查询获取包含特定列最大值的行-
这可以使用子查询来完成。在这里,我们正在获取colName3的最大值-
询问
SELECT colName1, colName2, colName3 FROM tableName WHERE colName3=(SELECT MAX(colName3) FROM tableName);输出结果
+--------------+--------------+--------------+ | colName1 | colName2 | colName3 | +--------------+--------------+--------------+ | 0003 | D | 20.05 | +--------------+--------------+--------------+
其他解决方案包括使用LEFTJOIN或按特定列以降序对所有行进行排序。这将给出带有LIMIT子句的第一行(它特定于MySQL)。
SELECT colName1, colName2, colName3 FROM tableName WHERE colName3=(SELECT MAX(colName3) FROM tableName); SELECT s1.colName1, s1. colName2, s1. colName3 FROM tableName s1 LEFT JOIN tableName s2 ON s1. colName3< s2. colName3 WHERE s2.colName1 IS NULL; SELECT colName1, colName2, colName3 FROM tableName ORDER BY colName3 DESC LIMIT 1;
如果一列中有多个最大值,每个最大值都具有相同的值,则LIMIT子句将仅显示其中一个列值。