ユーザーのいるテーブルがあります
id | user_id | session_id | last_activity (datetime)
すべてのユーザー要求に対して面倒なクエリを実行せずに、オンラインユーザーのリストを作成するための最良の方法は何ですか?1分ごとにcronを作成し、これを介して、最後の1分間に最後のアクティビティを持つ個別のuser_idを持つ一時テーブルを作成することは可能でしょうか。主な目標は、このクエリよりも高速なものを用意することです
select user_id
from users_session
where last_activity > dateadd(mi, -1, Current_TimeStamp)
group by user_id