複数のテーブルからデータを削除する Mysql の方法: まず 2 つのテーブル間にカスケード削除関係を確立し、次に [delete t1, t2 from t1, t2 wherecondition] ステートメントを通じて 1 つのテーブルのデータを削除します。別のテーブルの関連データも同時に削除します。
【関連する学習の推奨事項: mysql チュートリアル(ビデオ)】
複数のテーブルからデータを削除する Mysql の方法:
delete ステートメントの単純な使用では、データの複数テーブルの削除を実行できませんが、カスケード削除は可能です。 2 つのテーブル間にカスケード削除関係を確立すると、一方のテーブルのデータを削除し、もう一方のテーブルの関連データを同時に削除できます。
delete t1,t2 from t1,t2 where 条件
1. データ テーブル t1 から、データ テーブル t2 内の ID 値が一致するすべてのレコードを削除します。
DELETE t1 FROM t1,t2 WHERE t1.id=t2.id 或 DELETE FROM t1 USING t1,t2 WHERE t1.id=t2.id
2. データ テーブル t1 から、data 内のすべてのレコードを削除しますテーブル t2. t2 に一致するレコードがない場合は、それらを見つけて削除します
DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL 或 DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL
3. 2 つのテーブルから同じレコードのデータを見つけて、両方のテーブルのデータを削除します
DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25
注 ここでの delete t1,t2 の t1
,t2
は、エイリアス
にすることはできません。例: delete t1,t2 from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25
データ内で実行するのは間違いです (MYSQL バージョンは 5.0 以上ですが、5.0 では問題ありません)
上記のステートメントは次のように書き直されます
delete table_name,table2_name from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25
データ内で実行するのは間違っています (MYSQL バージョン 5.0 未満は 5.0 では問題ありません)
さらに詳しく知りたい場合はプログラミングについては、 php トレーニング のコラムにご注目ください。
以上がmysqlで複数のテーブルデータベースのデータを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。