Puede copiar fácilmente datos en una nueva tabla en MySQL usando SELECCIONAR EN. Esto le ayuda a crear tablas temporales rápidamente.
La declaración SELECT INTO copia datos de una tabla y los inserta en una nueva tabla. La declaración SELECT INTO selecciona datos de una tabla y los inserta en una nueva tabla.
Sintaxis SQL SELECT INTO
Copie todas las columnas en una nueva tabla en la misma base de datos:
SELECT * INTO new_table FROM table_name;
Copie todas las columnas en una nueva tabla en una base de datos diferente:
SELECT * INTO new_table IN database_name FROM table_name;
Copie solo las columnas que queremos en la nueva tabla en la misma base de datos:
SELECT column_name1,column_name2,.. INTO new_table FROM table_name;
SELECT column_name1,column_name2,.. INTO new_table IN database_name FROM table_name;
Nota
La nueva tabla se creará con los nombres de columna y los tipos definidos en la instrucción SELECT. Puede aplicar nuevos nombres utilizando la cláusula AS.
Ejemplos de SQL SELECT INTO
Crear una copia de seguridad de Clientes:
SELECT * INTO Users_Backup FROM Users;
Utilice la cláusula IN para copiar la tabla en otra base de datos:
SELECT * INTO Users_Backup IN 'Backup_database' FROM Users;
Copie solo unas pocas columnas en la nueva tabla:
SELECT User_Name, User_Contact INTO Users_Backup FROM Users;
Copie solo los clientes estadounidenses en la nueva tabla:
SELECT * INTO Users_Backup FROM Users WHERE Country='USA';
Copie datos de más de una tabla en la nueva tabla:
SELECT Users.User_Name, Orders.Order_ID INTO Users_Order_Backup FROM Users LEFT JOIN Orders ON Users.User_ID=Orders.User_ID;
Consejo :La declaración SELECT INTO también se puede usar para crear una nueva tabla vacía usando el esquema de otra. Simplemente agregue una cláusula WHERE que haga que la consulta no devuelva datos: