MySQLで特定の条件に基づいて複数の列を一括で更新する必要がある場合、次のようなクエリを使用できます。

UPDATE テーブル名
SET 列1 = 値1, 列2 = 値2, ...
WHERE 条件;

このクエリでは、指定した条件に合致する行の特定の列を一括で更新します。例えば、users テーブルで status が ‘inactive’ であるユーザーの status を ‘active’ に、かつ last_login を現在の時刻に更新する場合、以下のようなクエリが使えます。

UPDATE users
SET status = 'active', last_login = NOW()
WHERE status = 'inactive';

このクエリは、users テーブルで status が ‘inactive’ の行の status 列を ‘active’ に、last_login 列を現在の時刻に更新します。

この方法を使用すると、複数の列を一度に更新でき、冗長なクエリを避けることができます。ただし、注意が必要なのは、SET 句で指定した値が一律に適用されるため、それぞれの列に異なる値を設定する場合は注意が必要です。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です