我有一个名为“ emp_attendance ”的表,其中有两列“ log_in_date ”和“ user_id ”。
我只想获取所有给定的user_id(给出了100个以上的user_id)的所有最大(最新)登录日期。意思是,我只想知道特定用户在哪个最新(最长)日期登录。
到目前为止,我尝试过的是:
SELECT user_id,log_in_date FROM emp_attendance where log_in_date = (select max(log_in_date) from emp_attendance where user_id in (28,112,
160,244,276,284);
但是我对于所有user_id都获得相同的log_in_date。你能帮我解决我哪里出问题了吗?
注意:给出的USER_ID太多,这里我仅提供了六个USER_ID作为示例。
答案 0 :(得分:1)
应该很直接:
SELECT user_id,max(log_in_date) FROM emp_attendance GROUP BY user_id;
如果只希望将其用作用户ID的子集,则:
SELECT user_id,max(log_in_date) FROM emp_attendance WHERE
user_id in (28,112,160,244,276,284) GROUP BY user_id;