dongqian0763 2012-05-29 22:48
浏览 37
已采纳

PHP / MYSQL回显总计来自查询

I have run a query using COUNT(id) as a way to sum up the number of rows with a given id. I now want to print that number. Since there are many ids, I need to print it many times. I think each pageid/count(id) is its own row of the table but maybe I am wrong. Here is the gist of the code (apologies for using 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)'];
}

except the last line is not working.

Thanks for help!

  • 写回答

3条回答 默认 最新

  • doubenggua9430 2012-05-29 22:50
    关注

    Array indexes are case-sensitive. Since you're selecting COUNT(id), you should use $row['COUNT(id)'] and not $row['count(id)'].

    Alternatively, you can give the count an alias.

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

    With the above, you could use $row['pagecount'].

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?