Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Auswählen, ändern und in dieselbe Tabelle einfügen

INSERT INTO table2 (column1, column2, column3)
SELECT column1, 'no', column3 FROM table2 WHERE column2 = 'yes'

Hoffentlich ist dies etwas klarer, wie Sie dies tun. Wie Sie sehen können, habe ich zwei Spalten aus Tabelle2 entnommen und für die andere Spalte einen Textwert anstelle des Werts für Spalte2 verwendet.

Andere Muster, die Sie verwenden können:

Kombinieren Sie eine Spalte und einen anderen Text (Angenommen, die Spalte ist bereits ein String-Datentyp.

INSERT INTO table2 (column1, column2)
SELECT column1 + 'no', column2 FROM table2 WHERE column2 = 'yes'

Kombinieren Sie eine Spalte und etwas Text. Ein Beispiel, bei dem die Spalte eine Zeichenfolge ist, und eines, bei dem dies nicht der Fall ist.

INSERT INTO table2 (column1, column2)
SELECT column1 + 'no', 'A' + cast(column2 as Varchar (10)) FROM table2 WHERE column2 = 'yes'