2010-08-16 68 views
1

我有2代表一個叫「導讀」,另一個「REVIEW_DESCRIPTION」我可以在一個SQL語句中刪除2個表中的行嗎?

如果我做了一個連接以獲取來自所有數據:在此基礎上

SELECT * 
FROM reviews 
INNER JOIN reviews_description 
ON reviews.reviews_id=reviews_description.reviews_id 
WHERE reviews.customers_id = 54183 

我想刪除行在這兩個表中匹配這個標準在一個鏡頭,任何提示?

回答

3

是,MySQL supports deletions from more than one table in a single statement

對於第一個多表語法,只比前FROM中列出的錶行子句被刪除。對於第二個多表語法,只刪除FROM子句(USING子句之前)中列出的表中的匹配行。其效果是,你可以在同一時間刪除多個錶行,有僅用於搜索附加表...

第一個多表語法示例:

DELETE reviews, reviews_description 
    FROM reviews r 
    JOIN reviews_description rd 
WHERE reviews.reviews_id = reviews_description.reviews_id 
    AND reviews.customers_id = 54183 
+0

酷。不知道mysql支持那樣的東西。 – Matt 2010-08-16 21:28:13

+0

不知道這個+1 – SQLMenace 2010-08-16 21:30:01

0

會級聯刪除幫助嗎?

1

除非你有on cascade deletedelete trigger設置你需要使用2個語句

+0

不正確MySQL:http://dev.mysql.com/doc/refman/5.0/en/delete.html – 2010-08-16 21:28:27

相關問題