日期:2014-05-17 浏览次数:21022 次
delete from test_yixl main
where (main.member_id, main.user_id) in (select sub.member_id, sub.user_id
from (select t.member_id member_id , t.user_id user_id,
rank() over(partition by t.member_id order by t.user_id) temp
from test_yixl t ) sub
where sub.temp >2)
------解决方案--------------------
delete from table where rowid in(
select rowid from(
select rowid,
row_number() over(partition by member_id order by user_id) rn
from table
where rn>2))