Heim >Datenbank >MySQL-Tutorial >Wie füge ich Daten mit selektiver Spaltenauswahl in die INSERT INTO ... SELECT-Anweisung von SQL ein?
SQL's INSERT INTO ... SELECT: Gezielte Dateneinfügung
Mit der leistungsstarken INSERT INTO ... SELECT
-Anweisung von SQL können Sie eine Tabelle mit Daten aus den Ergebnissen einer Abfrage füllen. Dies ist ideal zum effizienten Kopieren oder Übertragen von Daten zwischen Tabellen.
Sehen wir uns eine typische Abfrage an:
<code class="language-sql">INSERT INTO courses (name, location, gid) SELECT name, location, gid FROM courses WHERE cid = $cid</code>
Dadurch werden ganze Zeilen kopiert. Allerdings müssen Sie oft nur bestimmte Spalten einfügen oder bestimmten Feldern benutzerdefinierte Werte zuweisen.
Selektive Spalteneinfügung und konstante Werte
Um ausgewählte Spalten einzufügen und eine Spalte wie „gid“ auf einen festen Wert festzulegen, passen Sie die Abfrage wie folgt an:
<code class="language-sql">INSERT INTO courses (name, location, gid) SELECT name, location, 1 FROM courses WHERE cid = $cid</code>
Hier wird 'gid' die Konstante '1' zugewiesen. Denken Sie daran, eine Konstante zu verwenden, die mit dem Datentyp der Spalte „gid“ kompatibel ist.
Wichtig: Die Anzahl der Spalten in der SELECT
-Anweisung muss mit der Anzahl der in der INSERT
-Anweisung aufgeführten Spalten übereinstimmen.
Das obige ist der detaillierte Inhalt vonWie füge ich Daten mit selektiver Spaltenauswahl in die INSERT INTO ... SELECT-Anweisung von SQL ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!