我想做的只是获得每年的最新记录,
SELECT pid, obsdate, obsvalue
FROM CPSFactDimension.Fact.LiverFunction
WHERE HDID = 40
AND obsdate >= '2006/01/01'
AND obsdate < '2017/12/31'
一些结果看起来像这样,但是仅过滤同一个人每年的最新记录的一个好主意是什么?
寻找这样的东西
答案 0 :(得分:1)
您可以使用row_number()
函数:
select t.*
from (select *, row_number() over (partition by pid, year(obsdate) order by obsdate desc) seq
from table t
) t
where seq = 1;