ホームページ > データベース > mysql チュートリアル > 単一のクエリを使用して複数の MySQL 行を異なる値で更新するにはどうすればよいですか?

単一のクエリを使用して複数の MySQL 行を異なる値で更新するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-17 11:01:09
オリジナル
914 人が閲覧しました

How Can I Update Multiple MySQL Rows with Different Values Using a Single Query?

さまざまな値を持つ複数の MySQL 行を効率的に更新する

このガイドは、単一の MySQL クエリを使用して複数のデータベース行を一意の値で更新するという一般的な課題に対処します。 いくつかの方法が存在しますが、このアプローチは明確さと効率性を提供します。

CASE ステートメントを使用したより明確なアプローチ

従来の方法では、ネストされた IF() ステートメントが含まれることが多く、条件が複数あると煩雑になります。 優れた代替案は、CASE ステートメントの力を活用します:

<code class="language-sql">UPDATE table_users
SET cod_user = (CASE WHEN user_role = 'student' THEN '622057'
                     WHEN user_role = 'assistant' THEN '2913659'
                     WHEN user_role = 'admin' THEN '6160230'
                END),
    date = '12082014'
WHERE user_role IN ('student', 'assistant', 'admin') AND
      cod_office = '17389551';</code>
ログイン後にコピー

この効率化されたクエリでは、CASE を使用して cod_user に基づいて user_role 値を動的に割り当て、同時に date を一致するすべての行に対して一貫した値に設定します。

重要な考慮事項

  • CASE ステートメント: これらは、単一のクエリ内で複数の条件付き割り当てを処理する簡潔な方法を提供します。
  • WHERE 句: これは更新対象の行を正確に対象にし、関連するレコードのみが変更されるようにします。
  • データの整合性: 最適なデータ管理のために、MySQL のネイティブの日付/時刻データ型を使用して日付を保存します。

この CASEWHERE を組み合わせたアプローチは、MySQL で多様な値を持つ複数の行を更新するための構造化された理解しやすいソリューションを提供します。

以上が単一のクエリを使用して複数の MySQL 行を異なる値で更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート