我正在寻找一种删除表中所有重复记录的方法。
我有一个查询,但是没有用:
delete from lista
where id in
(
select id
from lista
group by tytul_pl
having count(tytul_pl) > 1
);
服务器响应:
错误代码:1093。您无法在更新中指定目标表“ lista”
FROM子句
该查询:
select id
from lista
group by tytul_pl
having count(tytul_pl) > 1
运作良好。
错误在哪里?
最佳答案
我想你想要的是
DELETE lista FROM lista
LEFT OUTER JOIN (
SELECT MIN(ID) AS minID
FROM lista
GROUP BY tytul_pl) AS keepRowTable ON lista.ID = keepRowTable.minID
WHERE keepRowTable.minID IS NULL
您可以try it out here
关于mysql - 如何删除表中的所有重复记录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17844916/