删除(几乎)两个表之间的重复值

时间:2018-02-26 10:11:16

标签: mysql

我有两个MySQL表:

Table1:
Columns: Id, name, info, date.

Table2 (temporary): name, info, date.

'标识' in table1是一个自动生成的数字。我想从Table1中删除那些具有相同' info'和' date'值为表2中的另一行,其中具有相同的名称'表1和表2中的值。

1 个答案:

答案 0 :(得分:1)

你可以做一个子查询,它将两个关系连接在相同的值上,然后从Table1中删除这些值:

DELETE FROM Table1
WHERE (name, value, date) IN (
    SELECT t.name, t.value, t.date
    FROM Table1 AS t
    JOIN Table2 AS t2
    ON (t.name = t2.name AND t.value = t2.value AND t.date = t2.date)
)