DELETE FROM phone_number_list
WHERE id IN
(SELECT id FROM
( SELECT id, ROW_NUMBER() OVER
(partition BY phone_number, org_id ORDER BY id ASC) AS rnum
FROM phone_number_list
) AS t WHERE t.rnum > 1);
0
试试这个:
delete from your_table where id in
(select max(id) from your_table
group by org_id, phone_number
having count(1) > 1);
2 回答
这是使用窗口函数的解决方案:
试试这个:
Here's a working sample at DB-Fiddle . 它运作正常 .