在一个Mysql查询中获取行的所有信息及其计数

时间:2019-03-14 06:03:49

标签: php mysql database

我正在使用内部Join获取具有某些条件的用户列表。它的工作正常,但我也想在一个单一的MySQL查询中计算总数。这是查询:

select  username, hostname, sessiontable.status 
from usertable JOIN sessiontable 
ON usertable.users_id = sessiontable.session_id  
WHERE sessiontable.updated_at >= NOW() - INTERVAL 10 MINUTE

在上述查询中,我也尝试将COUNT(*)用作总数,但它只给出计数和空字段。如何获取最近10分钟内看到的所有用户的计数。

谢谢

1 个答案:

答案 0 :(得分:0)

使用group by子句并计算ID

select  username, hostname, sessiontable.status, count(usertable.users_id) as total 
from usertable JOIN sessiontable 
ON usertable.users_id = sessiontable.session_id  
WHERE sessiontable.updated_at >= NOW() - INTERVAL 10 MINUTE
group by usertable.users_id