【发布时间】:2020-01-11 10:55:57
【问题描述】:
我的表 ABC 包含以下数据
Id Name Date Execution id
-- ---- --------- -------------
1 AA 09SEP2019 11
1 AA 08SEP2019 22
1 AA 07SEP2019 33
2 BB 09SEP2019 44
2 BB 08SEP2019 55
2 BB 07SEP2019 66
我想为表中的每个不同 ID 获取其最大日期。所以结果集一定是这样的
Id Name Date Execution id
-- ---- --------- -------------
1 AA 09SEP2019 11
2 BB 09SEP2019 44
返回我需要的结果的查询
WITH MaxDate as (
SELECT Id,Name,Max(Date) from ABC group by Id,Name
)
SELECT view1.*, view2.exection_id
from
MaxDate view1,
ABC view2
WHERE
view1.date=view2.date and
view1.name=view2.name;
我不喜欢通过这种方式获取不同 ID 的最大日期。可能有另一种方法吗?可能有更简单的方法吗?
【问题讨论】:
标签: sql oracle greatest-n-per-group