Heim > Datenbank > MySQL-Tutorial > Wie füge ich Daten aus einer Tabelle in eine andere ein, indem ich „Insert...Select' in Laravel verwende?

Wie füge ich Daten aus einer Tabelle in eine andere ein, indem ich „Insert...Select' in Laravel verwende?

Mary-Kate Olsen
Freigeben: 2024-10-28 19:46:02
Original
1082 Leute haben es durchsucht

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

Einfügen von Daten mit „Einfügen...Auswählen“ in Laravel

Um Daten aus einer Tabelle in eine andere mit der Funktion „Einfügen“ einzufügen... Select-Anweisung in Laravel können Sie den folgenden Ansatz verwenden:

Während Laravel's Eloquent ORM oder Queries Insert...Select-Anweisungen nicht direkt unterstützen, können Sie die zugrunde liegenden Datenbankverbindungen nutzen, um das gewünschte Ergebnis zu erzielen.

<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>
Nach dem Login kopieren

Laravel 5.7 Update:

In Laravel 5.7.17 und höher können Sie auch die Methode insertUsing() verwenden, um ein ähnliches Ergebnis zu erzielen:

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

Das obige ist der detaillierte Inhalt vonWie füge ich Daten aus einer Tabelle in eine andere ein, indem ich „Insert...Select' in Laravel verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage