使用语法错误(mysql)删除一个表中的相同数据

时间:2012-08-29 08:59:54

标签: mysql sql rdbms

我的桌子上有相同的网址。每行可以通过id标识。 我想在url字段中删除相同的数据。我正在使用mysql。 我正在尝试将select一个(由最大ID标识)作为t2的新临时表,然后在url中比较原始表和我{{1}中的临时表之间的where 1}}子句。我的语句中存在语法错误,但我不确定它在哪里。你能帮我吗? thx guys。

陈述如下:

delete from t1, 
(select url, max(id) as id
        from tjob_webpage as t1 
        group by url
) as t2 
where t1.url = t2.url 
      t1.id < t2.id;

1 个答案:

答案 0 :(得分:2)

试试这个,

delete t1
from t1 INNER JOIN
(select url, max(id)  maxID
        from tjob_webpage
        group by url
) as t2 
where t1.url = t2.url 
      t1.id < t2.maxID;