SQL -返回最大列值


SQL - Return Max Column Value

我一直在寻找如何做到这一点,但我没有找到任何有用的!

所以我有下面的表,其中包含以下列:

ID | USER | COMMENTS
---------------------
1  | John | 20
2  | Sara | 32
3  | Peter| 10

我想做的是选择评论最多的用户。我使用:

<?php
$usermaxresult = mysql_query("SELECT MAX(comments) FROM users"); 
while ($usermaxrow = mysql_fetch_array($usermaxresult)) {
$max = "MAX(comments)";
echo "$usermaxrow[$max]";
}
?>

但是这只会返回最大评论数,而不是拥有最大评论数的用户。

——工作!谢谢你的评论,代码(它是葡萄牙语的,因为我是葡萄牙人)

$usermaxuploads = mysql_query("SELECT MAX(uploads) as max_count FROM login");
$usermaxuploadsrow = mysql_fetch_array($usermaxuploads);
$maxvar = $usermaxuploadsrow["max_count"];
$usermaxresult = mysql_query("SELECT * from login WHERE uploads = '$maxvar' ");
$usermaxrow = mysql_fetch_array($usermaxresult);
echo $usermaxrow['usuario'];

它应该能满足你的需求:

SELECT MAX(comments) as tot, user FROM users;

其中tot为评论数,user为相对用户

您可以在查询MAX()函数时使用ALIAS,以便以后以给定的名称调用它。

$usermaxresult = mysql_query("SELECT MAX(comments) as max_count, user FROM users"); 
现在你可以用 打印了
echo $usermaxrow['max_count'];
echo $usermaxrow['user'];

我不知道是我理解错了问题还是其他答案错了。SELECT MAX(comments) as max_count, user FROM users如何返回评论最多的用户?它返回最高评论数和第一个用户(可能不是评论最多的用户)。下面的问题不应该是正确的吗?

SELECT user, comments FROM users ORDER BY comments DESC LIMIT 0, 1