:: DEVELOPER ZONE
MySQL では、サブクエリをサポートしていません(バージョン 4.1 より前)。また、DELETE ステートメントでの 2 つ以上のテーブルの使用もサポートしていません(バージョン 4.0 より前)。そのため、2 つの関連テーブルからレコードを削除するには、以下の方法を使用してください。
メインテーブルで WHERE 条件に基づいて、レコードを SELECT する。
同じ条件に基づいて、メインテーブルのレコードを DELETE する。
DELETE FROM related_table WHERE related_column IN (selected_rows)。
related_column のクエリの合計文字数が 1,048,576(max_allowed_packetのデフォルト値)を超える場合、分割して、複数回 DELETE ステートメントを実行してください。related_column がインデックスの場合は、100 〜 1000 の related_column ID を削除するだけなので、通常 DELETE が非常に速くなります。related_column がインデックスでない場合、速度は IN 節の引数の数に依存しません。
© 1995-2005 MySQL AB. All rights reserved.
