Heim >Datenbank >MySQL-Tutorial >Wie füge ich Daten mit selektiver Spaltenauswahl in die INSERT INTO ... SELECT-Anweisung von SQL ein?

Wie füge ich Daten mit selektiver Spaltenauswahl in die INSERT INTO ... SELECT-Anweisung von SQL ein?

DDD
DDDOriginal
2025-01-18 20:15:10957Durchsuche

How to Insert Data with Selective Column Selection in SQL's INSERT INTO ... SELECT Statement?

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!

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