ホームページ >データベース >mysql チュートリアル >単一のクエリを使用して MySQL テーブルへの効率的な一括挿入を実行するにはどうすればよいですか?

単一のクエリを使用して MySQL テーブルへの効率的な一括挿入を実行するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-04 03:48:13164ブラウズ

How Can I Perform Efficient Bulk Inserts into a MySQL Table Using a Single Query?

単一 MySQL クエリでの一括挿入の実行

多くのシナリオでは、MySQL テーブルに複数の行を挿入する必要があります。行ごとに個別のクエリを実行することもできますが、より効率的なアプローチは、単一のクエリを使用して一括挿入を実行することです。

構文:

MySQL は便利な単一の行に複数の行を挿入するための構文クエリ:

INSERT INTO table (column1, column2, ...) VALUES (value11, value12, ...),
                                                  (value21, value22, ...),
                                                  ...;

例:

質問で説明されているシナリオを考えてみましょう。大量の登録ユーザーを「pxlot」という名前のテーブルに挿入する必要があります。 」。次のクエリはこれを実現します。

INSERT INTO pxlot (realname, email, address, phone, status, regtime, ip)
VALUES ('$realname1', '$email1', '$address1', '$phone1', '0', '$dateTime1', '$ip1'),
       ('$realname2', '$email2', '$address2', '$phone2', '0', '$dateTime2', '$ip2'),
       ('$realname3', '$email3', '$address3', '$phone3', '0', '$dateTime3', '$ip3');

プレースホルダーを各ユーザーの実際の値に置き換えることにより、3 つの新しい行が「pxlot」テーブルに挿入されます。

利点:

一括挿入では、いくつかのオプションが提供されます利点:

  • 効率: 複数のクエリではなく単一のクエリを実行することで、データベースのオーバーヘッドを大幅に削減します。
  • 待ち時間の短縮:への往復に伴う遅延データベース。
  • 簡略化されたコード: ループや反復挿入の必要がなくなります。

追加メモ:

  • 各行の値の数が、テーブル。
  • 各行の値をかっこで囲みます。
  • 値に特殊文字が含まれる場合は、適切な MySQL エスケープ シーケンスを使用してエスケープします。

以上が単一のクエリを使用して MySQL テーブルへの効率的な一括挿入を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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