简体   繁体   English

PHP / MYSQL回显总数来自查询

[英]PHP/MYSQL echo totals counts from query

I have run a query using COUNT(id) as a way to sum up the number of rows with a given id. 我已经运行了一个使用COUNT(id)作为总和具有给定id的行数的查询。 I now want to print that number. 我现在要打印该号码。 Since there are many ids, I need to print it many times. 由于有很多ID,我需要多次打印。 I think each pageid/count(id) is its own row of the table but maybe I am wrong. 我认为每个pageid / count(id)是表的自己行,但也许我错了。 Here is the gist of the code (apologies for using mysql_query): 这是代码的要点(使用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! 感谢帮助!

Array indexes are case-sensitive. 数组索引区分大小写。 Since you're selecting COUNT(id) , you should use $row['COUNT(id)'] and not $row['count(id)'] . 由于选择的是COUNT(id) ,因此应使用$row['COUNT(id)']而不是$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'] . 通过以上操作,可以使用$row['pagecount']

$sql = "SELECT pageid, COUNT(id) as tot_id FROM views 
GROUP BY pageid 
ORDER BY id"
...
echo $row['tot_id'];

您必须大写计数,因为它在sql Call中设置为COUNT。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM