MySQL中某列的最大值所在的行

阅读 593 收藏 0 点赞 0 评论 0

让我们了解如何在 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        |
+--------------+--------------+--------------+

其他解决方案包括使用 LEFT JOIN 或按特定列以降序对所有行进行排序。这将给出带有 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 子句将仅显示其中一个列值。

评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号