EXP:
select line,value,k0 from kk
1 10 A
1 10 A
1 10 A
3 31 B
3 31 B
1 10 A
1 10 A
1 10 A
3 31 B
3 31 B
解决快速的语句:
delete from kk a where a.rowid NOT in(select max(b.rowid) from kk b
where a.line=b.line and a.value=b.value and a.k0=b.k0)
----------------------------------------------------------------
如果表的列数少的,这个语句就好用!
利用分析函数:
delete from kk where rowid in(
select row_id from (
select rowid row_id,row_number() over(partition by line,k0,value order by rowid ) rn from kk
) where rn<>1)
RESULT:
1 1 10 A
2 2 40 B
3 3 31 B
4 1 22 A
5 1 31 B
----------------------------------------------------------------
根据网友的提示改了
那个地方应该为not in
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/101162/viewspace-1007756/ ,如需转载,请注明出处,否则将追究法律责任。