Aprender cómo llenar una tabla con datos de otra tabla utilizando INSERT INTO SELECT en MySQL es una habilidad clave para optimizar tu trabajo con bases de datos. Este método permite llenar rápidamente tablas nuevas aprovechando información existente, haciendo el proceso eficiente y claro.
¿Para qué sirve usar INSERT INTO SELECT en MySQL?
Esta función es ideal cuando precisas crear una nueva tabla a partir de información previamente almacenada. Por ejemplo, almacenar fácilmente el monto invertido en diferentes productos de un inventario.
La estructura general de este comando es sencilla y directa:
INSERTINTO investment (productID, investment)SELECT productID, stock * price FROM products;
No necesitas usar la palabra VALUES; en su lugar, utilizas un SELECT que alimentará los datos en las columnas correspondientes según su orden.
¿Cómo implementar INSERT INTO SELECT con un caso práctico?
Te cuento paso a paso cómo hacerlo:
Crea primero una nueva tabla (investment) con los campos correspondientes:
CREATETABLE investment ( ID INTUNSIGNEDPRIMARYKEYAUTO_INCREMENT, productID INTUNSIGNEDNOTNULL, investment INTNOTNULLDEFAULT0);
Ejecuta el comando INSERT INTO SELECT:
INSERTINTO investment (productID, investment)SELECT productID, stock * price FROM products;
Revisa que los datos estén correctamente insertados usando:
SELECT*FROM investment;
¿Cómo recuperar y ordenar datos almacenados?
Luego de insertar datos, puedes hacer consultas específicas como: