为什么我的sql计数打印字母文本?

时间:2015-12-06 01:05:16

标签: php mysql sql join

    $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值。为什么呢?

2 个答案:

答案 0 :(得分:2)

$users = mysql_query("SELECT  COUNT(votes.id) as count FROM users INNER JOIN votes
                                ON users.id=votes.recipientuserid WHERE votes.datenumber >='2014' ");

    while($user = mysql_fetch_array($users)){
        $count = $user['count'];
    }

答案 1 :(得分:2)

实现目标的一种方法是通过添加字段名称来修改查询,以便您可以像结果中的任何其他字段一样访问它:

SELECT *, COUNT(votes.id) as nbvotes FROM users ...

从php获得结果后,您可以通过这种方式访问​​

$row['nbvotes']

其中$ row是包含从mysql返回的记录的变量。不要忘记这些近在咫尺。

干杯

相关问题