java如何使用IN子句编写SQL查询以获取第一条记录(最新记录)?
我有一个excel文件,其中包含一些数据(id),这些id在数据库中有多条记录。我有大约400个id,我需要获得每个id的最新记录。我不想一个接一个地做。我试着用IN子句,但没用
Select *
from myTable with (nolock)
where submission_number IN ('02597', '69875')
order by timestame DESC;
上面的查询不符合我的要求。能给我一些帮助/指导吗
谢谢
# 1 楼答案
你可以使用
row_number
来实现:这将为每个
submission_number
返回一条记录。如果只需要in
子句中的2,可以将其添加回where
条件# 2 楼答案
我会使用
apply
来实现这一点:一个很好的特性是,您可以使用
outer apply
,它将在结果集中返回一行,即使您的表中没有匹配项另一种不使用子查询的方法是