2013-09-29 97 views

回答

1

而不是使用=的,將其更改爲IN,由於子查詢可以返回多個行。

DELETE FROM debts WHERE name IN (SELECT name FROM payers) 

但我更喜歡JOIN的表比使用IN

DELETE a 
FROM debts a 
     INNER JOIN payers b 
      ON a.name = b.name 
+0

請您提供一些解釋嗎?它是準備好查詢還是a,b只是佔位符? –

+0

@Ultra'a'和'b'是表的別名。所以不用編寫完整的表名,您可以使用別名。 –

+0

如何刪除所有,但不是從付款人選擇? –