10

回答した質問を確認しました。しかし、解決策は私にはうまくいきません。

DELETE FROM TEST2
INNER JOIN TEST1 on TEST1.FIELD2 = TEST2.FIELD2
WHERE TEST1.FIELD1 = 22;

このクエリを実行すると、phpmyadminで次のエラーが発生します。

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version 
for the right syntax to use near 'INNER JOIN TEST1 on TEST1.FIELD2 = TEST2.FIELD2' at line 2

私は疲れている。私は助けが必要です。前もって感謝します。

4

1 に答える 1

28

これはうまくいくはずです:

DELETE T
FROM TEST2 T
INNER JOIN TEST1 on TEST1.FIELD2 = T.FIELD2
WHERE TEST1.FIELD1 = 22;

サンプル Fiddle デモ

私はあなたもそれを行うことができると思いますIN:

DELETE FROM Test2
WHERE Field2 IN (
    SELECT Field2 
    FROM Test1
    WHERE Field1 = 22)
于 2013-02-22T14:28:52.827 に答える