我正在使用内部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分钟内看到的所有用户的计数。
谢谢
答案 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