1

「REVIEW」と「REVIEW_DESCRIPTION」という2つのテーブルがあります

両方からすべてのデータを取得するために結合を行う場合:

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

これに基づいて、この基準に一致する両方のテーブルの行を一度に削除したいのですが、ヒントはありますか?

4

3 に答える 3

3

はい、MySQL は 1 つのステートメントで複数のテーブルからの削除をサポートしています

最初の複数テーブルの構文では、FROM 句の前にリストされたテーブルから一致する行のみが削除されます。2 番目の複数テーブル構文では、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
于 2010-08-16T21:25:37.920 に答える
1

on cascade deleteまたはセットアップがない限り、 delete trigger2つのステートメントを使用する必要があります

于 2010-08-16T21:22:47.643 に答える
0

カスケード削除は役に立ちますか?

于 2010-08-16T21:22:47.067 に答える