ホームページ  >  記事  >  データベース  >  MySQL で SELECT サブクエリから複数の行を挿入するにはどうすればよいですか?

MySQL で SELECT サブクエリから複数の行を挿入するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-29 21:36:30251ブラウズ

How to Insert Multiple Rows from a SELECT Subquery in MySQL?

SELECT クエリから新しいテーブルへの複数の行の挿入

を返す SELECT サブクエリを使用して新しいテーブルにデータを挿入しようとすると、複数の行がある場合、MySQL では「サブクエリは複数の行を返します」というエラーが発生する可能性があります。この問題を解決するには、次のアプローチを検討してください。

解決策:

静的な値と SELECT クエリを組み合わせるように INSERT ステートメントを変更します。たとえば、返されるすべての行を結果テーブルに追加するには:

INSERT INTO Results (People, names)
SELECT d.id, "Henry"
FROM Names f
JOIN People d ON d.id = f.id

静的な値 "Henry" を SELECT クエリ内に組み込むことにより、MySQL は結果を結果テーブルに正常に挿入できます。このメソッドを使用すると、サブクエリが不定数の行を返す場合でも、複数の行を挿入できます。

以上がMySQL で SELECT サブクエリから複数の行を挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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