【问题标题】:PHP/MYSQL echo totals counts from query来自查询的 PHP/MYSQL 回显总数
【发布时间】:2012-05-29 22:48:04
【问题描述】:

我使用 COUNT(id) 运行了一个查询,以此来总结具有给定 id 的行数。我现在想打印那个号码。由于id很多,所以需要打印很多次。我认为每个 pageid/count(id) 都是表格中自己的行,但也许我错了。这是代码的要点(对于使用 mysql_query 表示歉意):

$sql = "SELECT pageid, COUNT(id) FROM views 
GROUP BY pageid 
ORDER BY COUNT(id)"

$res = mysql_query($sql);
while($row = mysql_fetch_array($res)) {
  echo $row['pageid'];
  echo $row['count(id)'];
}

除了最后一行不起作用。

感谢您的帮助!

【问题讨论】:

    标签: php mysql count echo


    【解决方案1】:

    数组索引区分大小写。由于您选择的是COUNT(id),因此您应该使用$row['COUNT(id)'] 而不是$row['count(id)']

    或者,您可以为计数指定别名。

    $sql = "SELECT pageid, COUNT(id) pagecount FROM views 
    GROUP BY pageid 
    ORDER BY COUNT(id)"
    

    有了上面,你可以使用$row['pagecount']

    【讨论】:

    • 这行得通。感谢所有给出类似答案的人。有人对我的问题投了反对票,可能是因为我没有立即接受答案。直到今天我都无法解决这个问题。如果你能删除反对票,那就太好了,不管你是什么。
    【解决方案2】:
    $sql = "SELECT pageid, COUNT(id) as tot_id FROM views 
    GROUP BY pageid 
    ORDER BY id"
    ...
    echo $row['tot_id'];
    

    【讨论】:

      【解决方案3】:

      您必须将 count 大写,因为它在 sql 调用中设置为 COUNT。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-18
        • 2017-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多