在sql中不能通过while循环获取计数值


Can't get the count value through while loop in sql?

我还需要获得发送消息的用户计数。

$userlist = mysql_query("select count(distinct m.subject) as msgcnt, u.name from message as m, message_users as mu, users as u where m.owner_id = u.id and m.id=mu.msg_id and mu.user_id='$u_id'group by name") or mysql_error();
        while($row=mysql_fetch_array($userlist))
        {               
            echo $row['name']."<br />";
        }

如何使用while循环获取计数值…

您已经将上述计数存储在别名msgcnt中,只需回显它。

while($row=mysql_fetch_assoc($userlist))
        {               
            echo $row['name']." : ".$row['msgcnt']."<br />";
        }
echo $row['msgcnt'].'<br/>';

使用mysql_fetch_assoc获取关联数组!

$userlist = mysql_query("select count(distinct m.subject) as msgcnt, u.name from message as m, message_users as mu, users as u where m.owner_id = u.id and m.id=mu.msg_id and mu.user_id='$u_id'group by name") or mysql_error();
while($row=mysql_fetch_assoc($userlist)) {               
        echo $row['name']."<br />";           
        echo $row['msgcnt']."<br />";
    }

指定别名为msgcnt时使用msgcnt

echo $row['msgcnt']."<br />";