Tutorial MySQL

MySQL INICIO Introducción a MySQL MySQL RDBMS

mysql SQL

mysql SQL MySQL SELECCIONAR MySQL DONDE MySQL Y, O, NO MySQL ORDENAR POR MySQL INSERTAR EN Valores NULOS de MySQL ACTUALIZACIÓN MySQL MySQL ELIMINAR LÍMITE MySQL MySQL MIN y MAX MySQL CUENTA, PROMEDIO, SUMA MySQL ME GUSTA Comodines de MySQL MySQL EN MySQL ENTRE Alias ​​MySQL MySQL se une UNIÓN INTERNA MySQL MySQL IZQUIERDA UNIRSE MySQL ÚNETE A LA DERECHA UNIÓN CRUZADA MySQL MySQL Self Join UNIÓN MySQL MySQL GRUPO POR MySQL TENER MySQL EXISTE MySQL CUALQUIERA, TODO MySQL INSERTAR SELECCIÓN CASO MySQL Funciones nulas de MySQL Comentarios MySQL Operadores MySQL

Base de datos MySQL

MySQL Crear base de datos Base de datos de caída de MySQL Crear tabla MySQL Tabla desplegable de MySQL MySQL Alterar tabla Restricciones de MySQL MySQL no nulo MySQL Único Clave principal de MySQL Clave foránea de MySQL Comprobación de MySQL Valor predeterminado de MySQL Crear índice de MySQL Incremento automático de MySQL Fechas MySQL Vistas MySQL

Referencias MySQL

Tipos de datos MySQL Funciones MySQL

Ejemplos de MySQL

Ejemplos de MySQL Cuestionario MySQL Ejercicios MySQL

MySQL INSERTAR EN SELECT Declaración


La declaración INSERT INTO SELECT de MySQL

La INSERT INTO SELECTinstrucción copia datos de una tabla y los inserta en otra tabla.

La INSERT INTO SELECTdeclaración requiere que los tipos de datos en las tablas de origen y de destino coincidan.

Nota: Los registros existentes en la tabla de destino no se ven afectados.

INSERT INTO SELECT Sintaxis

Copie todas las columnas de una tabla a otra tabla:

INSERT INTO table2
SELECT * FROM table1
WHERE condition;

Copie solo algunas columnas de una tabla en otra tabla:

INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;

Base de datos de demostración

En este tutorial utilizaremos la conocida base de datos de ejemplo Northwind.

A continuación se muestra una selección de la tabla "Clientes":

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

Y una selección de la tabla "Proveedores":

SupplierID SupplierName ContactName Address City Postal Code Country
1 Exotic Liquid Charlotte Cooper 49 Gilbert St. Londona EC1 4SD UK
2 New Orleans Cajun Delights Shelley Burke P.O. Box 78934 New Orleans 70117 USA
3 Grandma Kelly's Homestead Regina Murphy 707 Oxford Rd. Ann Arbor 48104 USA


MySQL INSERTAR EN SELECT Ejemplos

La siguiente instrucción SQL copia "Proveedores" en "Clientes" (las columnas que no están llenas de datos contendrán NULL):

Ejemplo

INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers;

La siguiente instrucción SQL copia "Proveedores" en "Clientes" (llene todas las columnas):

Ejemplo

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
SELECT SupplierName, ContactName, Address, City, PostalCode, Country FROM Suppliers;

La siguiente instrucción SQL copia solo los proveedores alemanes en "Clientes":

Ejemplo

INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers
WHERE Country='Germany';