ホームページ  >  記事  >  データベース  >  Laravelで挿入...選択を使用してあるテーブルから別のテーブルにデータを挿入する方法

Laravelで挿入...選択を使用してあるテーブルから別のテーブルにデータを挿入する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-28 19:46:02959ブラウズ

How to Insert Data from One Table to Another Using Insert...Select in Laravel?

Laravel で Insert...Select を使用してデータを挿入する

Insert... を使用してあるテーブルから別のテーブルにデータを挿入するにはLaravel の Select ステートメントでは、次のアプローチを利用できます:

Laravel の Eloquent ORM またはクエリは Insert...Select ステートメントを直接サポートしていませんが、基礎となるデータベース接続を利用して目的の結果を達成できます。

<code class="php">/* Obtain the original select query and its bindings */
$select = User::where(...)
                  ->where(...)
                  ->whereIn(...)
                  ->select(['email', 'moneyOwing']);
$bindings = $select->getBindings();

/* Construct the insert query */
$insertQuery = 'INSERT INTO user_debt_collection (email, dinero) ' . $select->toSql();

/* Execute the insert query using the bindings */
\DB::insert($insertQuery, $bindings);</code>

Laravel 5.7 アップデート:

Laravel 5.7.17 以降では、insertUsing() メソッドを使用して同様の結果を達成することもできます:

<code class="php">DB::table('user_debt_collection')->insertUsing(['email', 'dinero'], $select);</code>

以上がLaravelで挿入...選択を使用してあるテーブルから別のテーブルにデータを挿入する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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