Resumen: en este tutorial, aprenderá a usar SQL Server INSERT INTO SELECT
instrucción para agregar datos de otras tablas a una tabla.
Introducción a SQL Server instrucción INSERT INTO SELECT
Para insertar datos de otras tablas en una tabla, utilice el siguiente SQL Server INSERT INTO SELECT
instrucción:
Code language: SQL (Structured Query Language) (sql)
En esta sintaxis, la instrucción inserta filas devueltas por query
en target_table
.
El query
es cualquier declaración que recupera datos de otras tablas. Debe devolver los valores que corresponden a las columnas especificadas en la column_list
.
La TOP
cláusula es Opcional. Le permite especificar el número de filas devueltas por la consulta que se insertarán en la tabla de destino. Si usa la opción PERCENT
, la declaración insertará el porcentaje de filas en su lugar. Tenga en cuenta que es una buena práctica utilizar siempre la cláusula TOP
con la cláusula ORDER BY
.
SQL Server INSERT INTO SELECT ejemplos
Creemos una tabla llamada addresses
para la demostración:
1) Inserte todas las filas de otro ejemplo de tabla
La siguiente declaración inserta todas las direcciones de la tabla customers
en la tabla addresses
:
Para verificar la inserción, utiliza la siguiente consulta:
Code language: SQL (Structured Query Language) (sql)
Aquí está el resultado:
2) Inserte algunas filas de otro ejemplo de tabla
A veces, solo necesita insertar algunas filas de otra tabla en una tabla. En este caso, limita el número de filas devueltas por la consulta mediante el uso de condiciones en la cláusula WHERE
.
La siguiente declaración agrega las direcciones de las tiendas ubicadas en Santa Cruz
y Baldwin
a la addresses
tabla:
SQL El servidor devolvió el siguiente mensaje que indica que dos filas se han insertado correctamente.
Code language: SQL (Structured Query Language) (sql)
3) Inserte la parte superior N de filas
Primero, utiliza la siguiente declaración para eliminar todas las filas de la addresses
tabla:
Code language: SQL (Structured Query Language) (sql)
En segundo lugar, para insertar la parte superior 10 clientes ordenados por sus nombres y apellidos, utilice la instrucción INSERT TOP INTO SELECT
de la siguiente manera:
SQL Server devolvió el siguiente mensaje que muestra que se han insertado diez filas
Code language: SQL (Structured Query Language) (sql)
4) Inserte el porcentaje superior de filas
En lugar de utilizar un número absoluto de filas, puede una inserción de un número porcentual de filas en una tabla.
Primero, trunque todas las filas de la addresses
tabla:
Code language: SQL (Structured Query Language) (sql)
En segundo lugar, inserte el dos por ciento superior de las filas de la tabla customers
ordenadas por nombre y apellido en la addresses
table:
SQL Server emitió el siguiente mensaje indicando que 145 filas se han insertado correctamente.
Code language: SQL (Structured Query Language) (sql)
En este tutorial, He aprendido a usar la instrucción INSERT INTO SELECT
de SQL Server para insertar filas de otras tablas en una tabla.