无法获取具有等级的重复数据删除记录
Unable to get dedupe records with rank
我正在尝试使用排名对我的数据集进行重复数据删除,但它没有为第二条记录分配不同的数字。我在这里做错了什么?
with get_rank as (
select id, code, rank() over (partition by id order by z.rowid) as ranking
from mytable z
)
select *
from get_rank
where ranking = 1
and id = 72755
ID CODE RANKING
---------- ---- ----------
72755 M 1
72755 M 1
使用row_number()
:
with get_rank as (
select id, code,
row_number() over (partition by id order by z.rowid) as ranking
from mytable z
)
select *
from get_rank
where ranking = 1 and id = 72755;
保证每行 return 不同的值。
我正在尝试使用排名对我的数据集进行重复数据删除,但它没有为第二条记录分配不同的数字。我在这里做错了什么?
with get_rank as (
select id, code, rank() over (partition by id order by z.rowid) as ranking
from mytable z
)
select *
from get_rank
where ranking = 1
and id = 72755
ID CODE RANKING
---------- ---- ----------
72755 M 1
72755 M 1
使用row_number()
:
with get_rank as (
select id, code,
row_number() over (partition by id order by z.rowid) as ranking
from mytable z
)
select *
from get_rank
where ranking = 1 and id = 72755;
保证每行 return 不同的值。