【发布时间】:2015-12-06 01:05:16
【问题描述】:
$users = mysql_query("SELECT *, COUNT(votes.id) FROM users INNER JOIN votes
ON users.id=votes.recipientuserid WHERE votes.datenumber >='2014' ");
while($user = mysql_fetch_array($users)){
$count = $user[COUNT(votes.id)];
}
在 phpmyadmin 中,查询计数显示一个数字。 $count 的值不是数字,而是 users.username 值。为什么?
【问题讨论】:
-
那就是
$user['COUNT(votes.id)']。但是您应该在查询中使用别名:SELECT *, COUNT(votes.id) as cnt FROM users....然后$count = $user['cnt']; -
@Bart 如果我选择的是用户而不是投票,则不是。
-
为什么需要别名? @VolkerK
-
使其更具可读性和健壮性。但它可能适用于
$user['COUNT(votes.id)']votes 和id->count('votesid')-> 1 ->$user[1]这可能是您通过 * 选择的字段