ホームページ >データベース >mysql チュートリアル >MySQL の ON DUPLICATE KEY UPDATE を複数の行に使用するには?
MySQL の ON DUPLICATE KEY UPDATE を使用した複数の行の効率的な処理
MySQL は、既存の一意の値のチェックと更新を同時に行いながら、複数の行の挿入を管理する合理的なアプローチを提供します。これは、ON DUPLICATE KEY UPDATE
句を使用して実現されます。 この機能により、単一のクエリ内で特定のフィールドを条件付きで更新または挿入できます。
既存の行を選択的に更新し、新しい行を追加するには、エイリアスまたは VALUES
キーワードを ON DUPLICATE KEY UPDATE
と組み合わせて利用します。
MySQL 8.0.19 以降 (エイリアスの使用):
<code class="language-sql">INSERT INTO beautiful (name, age) VALUES ('Helen', 24), ('Katrina', 21), ('Samia', 22), ('Hui Ling', 25), ('Yumie', 29) AS new ON DUPLICATE KEY UPDATE age = new.age</code>
MySQL 8.0.19 以前 (VALUES キーワードを使用):
<code class="language-sql">INSERT INTO beautiful (name, age) VALUES ('Helen', 24), ('Katrina', 21), ('Samia', 22), ('Hui Ling', 25), ('Yumie', 29) ON DUPLICATE KEY UPDATE age = VALUES(age)</code>
これらの例は、既存の一意のキーに基づいてデータを更新または挿入する方法を示しています。 一意のキーがすでに存在する場合、指定されたフィールドが更新されます。それ以外の場合は、新しい行が挿入されます。 VALUES
キーワードまたはエイリアス new
は、INSERT
ステートメントに挿入される値を参照します。
以上がMySQL の ON DUPLICATE KEY UPDATE を複数の行に使用するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。