sql >> Base de Datos >  >> RDS >> Sqlserver

Inserte todos los valores de una tabla en otra tabla en SQL

La declaración de inserción en realidad tiene una sintaxis para hacer precisamente eso. Sin embargo, es mucho más fácil si especifica los nombres de las columnas en lugar de seleccionar "*":

INSERT INTO new_table (Foo, Bar, Fizz, Buzz)
SELECT Foo, Bar, Fizz, Buzz
FROM initial_table
-- optionally WHERE ...

Será mejor que aclare esto porque, por alguna razón, esta publicación está recibiendo algunos votos negativos.

La sintaxis INSERT INTO ... SELECT FROM es para cuando la tabla en la que está insertando ("new_table" en mi ejemplo anterior) ya existe. Como han dicho otros, la sintaxis SELECT ... INTO es para cuando desea crear la nueva tabla como parte del comando.

No especificó si la nueva tabla debe crearse como parte del comando, por lo que INSERTAR EN... SELECCIONAR DE debería estar bien si su tabla de destino ya existe.