sql—如果条目被多次执行,则需要在每种情况下获取第二条记录

um6iljoc  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(292)

如果在sas enterprise guide中多次输入pan,则需要获取第二条记录
输入数据:

PAN1 PREF1
PAN2 PREF1
PAN2 PREF2
PAN2 PREF3
PAN3 PREF3
PAN3 PREF4

输出:

PAN1 PREF1
PAN2 PREF2
PAN3 PREF4

所以基本上如果pan的输入是一次,那么需要填充相同的记录。如果pan的输入不止一次,那么需要填充pan的secord记录。

ycggw6v2

ycggw6v21#

你可以合并 row_number() 有Windows的 count() :

select pan, ref
from (
    select 
        t.*, 
        row_number() over(partition by pan order by ref) rn,
        count(*) over(partition by pan) cnt
    from mytable t
) t
where rn = 2 or cnt = 1

相关问题