我的桌子上有非常多的数据(表1和表2),所以我问这个简单的问题,因为我想有最有效的方法来做到这一点:
如何删除表1中的所有条目,这些条目也在表2中(由属性' atribxy'标识)。因此,表1和表2中只有独占条目。如何使用SQL查询以最有效的方式实现此目的?
答案 0 :(得分:4)
有很多方法可以做到:
使用加入
DELETE table2
FROM table2
INNER JOIN table1 ON table1.atribxy = table2.atribxy
使用IN
DELETE FROM table2 WHERE atribxy IN (SELECT atribxy FROM table1)
使用EXIST
DELETE FROM table2 t2 WHERE EXISTS ( SELECT 1 FROM table1 t1 WHERE t1.atribxy = t2.atribxy)