Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Memasukkan Data dari Satu Jadual ke Jadual Lain Menggunakan Sisipkan...Pilih dalam Laravel?

Bagaimana untuk Memasukkan Data dari Satu Jadual ke Jadual Lain Menggunakan Sisipkan...Pilih dalam Laravel?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-28 19:46:02959semak imbas

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

Memasukkan Data Menggunakan Sisip...Pilih dalam Laravel

Untuk memasukkan data dari satu jadual ke jadual lain menggunakan Sisipan... Pilih pernyataan dalam Laravel, anda boleh menggunakan pendekatan berikut:

Walaupun ORM atau Pertanyaan Laravel yang Fasih tidak menyokong Sisipan...Pilih pernyataan secara langsung, anda boleh memanfaatkan sambungan pangkalan data asas untuk mencapai hasil yang diingini.

<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>

Kemas Kini Laravel 5.7:

Dalam Laravel 5.7.17 dan lebih baru, anda juga boleh menggunakan kaedah insertUsing() untuk mencapai hasil yang serupa:

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

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Data dari Satu Jadual ke Jadual Lain Menggunakan Sisipkan...Pilih dalam Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn