不知这种写法是否有特殊情况,请佬们指正! delete from titles_test where id in ( select id from ( select id, ROW_NUMBER() over ( PARTITION by emp_no ORDER BY id ) as `rank` from titles_test ) t1 where `rank` >= 2 )