Wie kopiere / füge ich Daten aus einer Tabelle in eine andere Tabelle mit demselben Schema in SQL Server hinzu?
Bearbeiten:
Nehmen wir an, es gibt eine Abfrage
select *
into table1
from table2
where 1=1
das erstellt table1
mit dem gleichen Schema sowie Daten wie in table2
.
Gibt es eine kurze Abfrage wie diese, um nur ganze Daten nur in eine bereits vorhandene Tabelle zu kopieren?
sql
sql-server
sql-server-2008
Rajaram Shelar
quelle
quelle
INSERT INTO newTable (col1, col2, col3,col4) values ((SELECT column1, column2, column3 FROM oldTable where condition),'string');
Antworten:
Wenn beide Tabellen wirklich dasselbe Schema sind:
Andernfalls müssen Sie die Spaltennamen angeben (die Spaltenliste für
newTable
ist optional, wenn Sie einen Wert für alle Spalten angeben und Spalten in derselben Reihenfolge wienewTable
das Schema auswählen ):quelle
blank data
für eine Spalte eingeben möchte ?NULL
s, Zeichenfolgenkonstanten, Ausdrücke oder sogar Unterabfragen.INSERT INTO newTable (col1, col2, col3,col4) values ((SELECT column1, column2, column3 FROM oldTable where condition),'string');
Dies ist der richtige Weg, um es zu tun:
quelle
Einfacher Weg, wenn keine neue Tabelle vorhanden ist und Sie eine Kopie der alten Tabelle mit allem erstellen möchten, funktioniert das Folgende in SQL Server.
quelle
quelle
Versuche dies:
quelle
Versuche dies:
quelle
Es ist nicht obligatorisch, dass Spaltennamen identisch sind.
quelle
Ausgewählte Spalte mit Bedingung einfügen
Kopieren Sie alle Daten mit demselben Spaltennamen von einer Tabelle in eine andere.
quelle
Die erste Abfrage erstellt die Struktur von
table1
bistable2
und die zweite Abfrage legt die Daten vontable1
bis abtable2
quelle