sql内连接删除

时间:2013-10-15 07:10:22

标签: mysql sql sql-server

我有两张桌子

  

tests_sub,tests_sub_sub

tests_sub.id = tests_sub_sub.id

所以我想用一个

删除两个表中的数据
  

sql查询

我使用了以下内连接

DELETE tests_sub, tests_sub_sub FROM tests_sub
INNER JOIN tests_sub_sub ON tests_sub_sub.id = tests_sub.id
WHERE tests_sub.id = 10

只有当两个表都有tests_sub.id的条目时,查询才能正常运行...  (如果tests_sub_sub没有test_sub.id = 10的条目...虽然表tests_sub有该id的条目没有行受到影响... 请提出一些建议......

1 个答案:

答案 0 :(得分:1)

使用LEFT JOIN

DELETE tests_sub, tests_sub_sub 
FROM   tests_sub
       LEFT JOIN tests_sub_sub 
          ON tests_sub_sub.id = tests_sub.id
WHERE  tests_sub.id = 10