【发布时间】:2015-10-07 21:55:27
【问题描述】:
我正在尝试从可以通过此查询选择的表中删除某种重复项:
SELECT *
FROM `articles` AS t1
WHERE EXISTS (
SELECT `id`
FROM articles AS t2
WHERE t2.link = t1.link AND
t2.id > t1.id
);
所以我尝试了这两个查询,但它们似乎也不起作用:
DELETE FROM `articles` AS t1
WHERE EXISTS (
SELECT `id` FROM articles AS t2
WHERE t2.link = t1.link AND
t2.id > t1.id
);
&
DELETE FROM t1 USING `articles` AS t1
WHERE EXISTS (
SELECT `id`
FROM `articles` AS t2
WHERE t2.link = t1.link AND
t2.id > t1.id
);
两者都返回语法错误。
【问题讨论】:
-
#1093 - 您不能在 FROM 子句中指定目标表 't1' 进行更新
标签: mysql sql duplicate-removal sql-delete