计数分组行仅显示1

时间:2014-10-05 17:51:06

标签: mysql sql

这是我的查询。

$qry = "SELECT *
        FROM users 
        GROUP BY source
        HAVING COUNT(source) >= 2
        ORDER BY COUNT(source) 
        DESC LIMIT 0, 3";

mysql_set_charset("UTF8");
$result = @mysql_query($qry);
if($result === FALSE) {
    die(mysql_error()); // TODO: better error handling
}

while ($row=mysql_fetch_array($result)){
echo $row['source'];
echo count($row['source']);
echo "<br>";
}

我不知道为什么它只显示1,但这只是一列有很多相似的值,我想查询它们并显示有多少值,例如apple在列中10次,它会显示苹果10。

我不知道为什么我的查询不起作用,只显示1,请帮助,谢谢。 :)

1 个答案:

答案 0 :(得分:4)

您还需要选择计数

    $qry = "SELECT source,   COUNT(source)
    FROM users 
    GROUP BY source
    HAVING COUNT(source) >= 2
    ORDER BY COUNT(source) 
    DESC LIMIT 0, 3"