对不起,是oracle的新手。
我想获得当前和最后一张活动记录:
ID int (PK)
RecordID int
Description varchar
TermDate datetime
基本上,只要TermDate为null,它就会处于活动状态,但会根据RecordID获取最后终止的记录。因此,RecordID不是唯一的,但在结果中显示时将是唯一的。
答案 0 :(得分:1)
假设您想要所有当前记录以及每个RecordID的最后一个活动记录,请尝试:
select * from
(select t.*, rank() over (partition by RecordID order by TermDate desc) rn
from MyTable T)
where TermDate is NULL or rn = 1