2013-10-16 49 views
0

刪除兩個不同的表的兩個結果繼第一表(first_table):與共用字段

id 
data 
status 

繼第二表(second_table):

id 
status 
final_result 

我想刪除所有來自第二個表的結果,其中final_result等於3,並且在第一個表中status等於先前刪除的結果的status。以下我的查詢:

DELETE FROM second_table WHERE final_result = '3' 

我不知道如何繼續,你能幫我嗎?

回答

1
DELETE FT, ST 
FROM first_table AS FT 
JOIN second_table AS ST 
ON FT.status = ST.status 
AND ST.final_result = '3' 
+0

我認爲你需要同步你的別名。 – Tom

+0

@Tom,謝謝,完成 – Linger

1

您必須首先刪除第一張表的行。

DELETE FROM first_table where status in (select distinct status from second_table where final_result='3') 
DELETE FROM second_table WHERE final_result = '3'