我有一点问题。我需要在我们的数据库中从用户 ID 中选择一个状态。问题是,每个用户 ID 都有多行,带有不同的日期戳。在数据库中保留历史记录。
我已经尝试使用 UserID 分组,但它会给我多行,在某些用户上,而不是只有最新的行,这是我想要的。
这是我的查询:
select status, userid from EmployeeTable
where UserId in ('nis','rele')
and asofdate in
(select max(asofdate) from
EmployeeTable
where userid in ('nis','rele')
group by userid
)
所以 EmployeeTable 有 AsOfDate 列,它基本上是更新日期。所以我只想要特定 UserID 的 AsOfDate 最高的行。我究竟做错了什么?我猜这与我使用 in 子句有关。我放在那里的用户 ID 越多,输出多行的用户 ID 就越多,但我需要能够一次选择多个用户,以提高性能。