2009-10-21 12 views

risposta

27
INSERT INTO table1 
SELECT facilabbr, unitname, sortnum FROM table2 
12

Supponendo che si desidera solo per accodamento e che le colonne corrispondono:

INSERT INTO Table1 
    SELECT facilabbr, unitname, sortnum FROM table2 

Se si vuole sostituire e le colonne ancora corrispondere:

Truncate Table1 
INSERT INTO Table1 
    SELECT facilabbr, unitname, sortnum FROM table2 

Se si desidera sostituire e le colonne non corrispondono:

DROP Table1 
SELECT facilabbr, unitname, sortnum INTO Table1 FROM table2 
+1

Sì, questa sintassi funziona, ma se non lo si fa ad hoc e si riutilizza il codice, è sempre consigliabile includere l'elenco di colonne nella parte INSERT. Ho lavorato su una serie di articoli di "cattive abitudini", e questo è certamente uno di questi. http://is.gd/4ucu2 –

5
INSERT INTO TABLE1 T1 (T1.FIELD1, T1.FIELD2) 
SELECT (T2.FIELD1, T2.FIELD2) 
FROM TABLE2 T2 

dovrebbe funzionare.

Problemi correlati