ホームページ >データベース >mysql チュートリアル >MySQL で複数テーブルの更新 (JOIN UPDATE) を実行するにはどうすればよいですか?

MySQL で複数テーブルの更新 (JOIN UPDATE) を実行するにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-05 06:59:43853ブラウズ

How to Perform a Multi-Table Update (JOIN UPDATE) in MySQL?

結合更新のための MySQL 構文

MySQL では、特定の構文を使用して複数テーブルの更新が可能です。この構文では、結合条件に基づいて複数のテーブルを更新できます。

結合更新の実装

次のシナリオを考えてみましょう。予約がキャンセルされます。これを実現するには、次のように結合更新クエリを使用します。

UPDATE Reservations r
JOIN Train t ON (r.Train = t.TrainID)
SET t.Capacity = t.Capacity + r.NoSeats
WHERE r.ReservationID = ?;

where "?"キャンセルされた予約に関連付けられた予約 ID を表します。

任意の数による増分

上記のクエリを変更して、任意の座席数だけ収容力を増分できます。

UPDATE Reservations r
JOIN Train t ON (r.Train = t.TrainID)
SET t.Capacity = t.Capacity + <arbitrary_number>
WHERE r.ReservationID = ?;

トランザクション動作

単一のトランザクションで列車の定員を増やしたり予約を削除したりする場合は、特定の順序に従うことが重要です。予約テーブルから削除する前に列車テーブルを更新する限り、トランザクションは整合性を維持します。

以上がMySQL で複数テーブルの更新 (JOIN UPDATE) を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。