SQL SELECT INTO – cómo copiar conjuntos de datos en tablas

Con SQL SELECT INTO puedes copiar los conjuntos de datos que quieras y pegarlos en una tabla nueva o dejarlos en el portapapeles. Su ventaja principal es que permite una transmisión de datos rápida y fiable con la que puedes organizar, actualizar y ordenar datos.

¿Qué es SQL SELECT INTO?

El lenguaje de programación y bases de datos SQL ofrece diversas herramientas para gestionar, analizar y procesar de manera profesional tus bases de datos. Entre ellas están comandos como SQL SELECT, que puede combinarse con otros operadores para llevar a cabo diversas acciones. Por ejemplo, con SQL SELECT DISTINCT puedes eliminar duplicados, mientras que con el operador de SQL SELECT INTO puedes copiar los datos de una tabla a otra. SELECT INTO no es uno de los comandos, operadores ni funciones clásicas de SQL, sino que funciona como cláusula en los statements de SQL.

Consejo

Aprende los fundamentos y funciones más importantes de SQL – uno de los lenguajes de programación y bases de datos más populares y solicitados en todos los sectores. Con nuestra guía SQL con ejemplos podrás iniciarte en el programa rápidamente.

Sintaxis de SELECT INTO

La sintaxis SELECT INTO es sencilla:

SELECT  *
INTO  nueva_tablameta
FROM tabla_existente;
sql

Utiliza los parámetros:

  • SELECT: El comando SELECT define las columnas de la tabla ya existente de la que quieres copiar los datos. Puedes indicar los nombres concretos de las columnas o usar un asterisco * para copiar todos los datos de la tabla de origen.
  • INTO: Define y nombra la nueva tabla meta para los datos copiados.
  • FROM: Elige la tabla ya existente de la que quieres copiar los datos.
  • WHERE: Con la cláusula opcional SQL WHERE puedes especificar condiciones concretas que deben reunir los datos que vas a copiar de la tabla de origen.

Para qué sirve el operador SELECT INTO

SQL SELECT INTO sirve principalmente para trasladar datos a una tabla nueva, pero también vale para agregar, almacenar temporalmente en la caché o extraer conjuntos de datos o parte de ellos. Eliminando además los duplicados, por ejemplo con DISTINCT, puedes limpiar y reducir tus datos.

He a continuación algunos usos prácticos de distintas ramas:

  • Copiar, extraer y trasladar datos de productos, clientes, pedidos o pacientes para proyectos nuevos, estudios o para la migración de datos
  • Analizar datos de tendencias y marketing mediante datos de pedidos y ventas
  • Analizar datos financieros trasladando datos de transacciones
  • Limpiar datos de clientes o trabajadores eliminando los duplicados en una tabla nueva
  • Recabar y analizar datos en Data Warehouses
  • Recoger datos para modelos de aprendizaje automático
Consejo

¿Buscas un sistema de gestión de bases de datos seguro y escalable? Con Hosting SQL Server de IONOS accederás a una oferta única de servidor y alojamiento con una protección de datos según estándares alemanes.

Servidores virtuales VPS
Virtualización completa con acceso root
  • Ancho de banda de hasta 1 Gb/s y tráfico ilimitado
  • Almacenamiento SSD NVMe ultrarrápido
  • Incluye: edición Plesk Web Host

Ejemplos prácticos de SQL SELECT INTO

Te explicamos cómo funciona SQL SELECT INTO con dos ejemplos prácticos.

Seleccionar y transferir clientes únicos

En la tabla “Pedidos”, quieres seleccionar todos los resultados de la columna “Nombre de cliente” y transferir sin duplicar las filas por pedidos varios a una tabla nueva llamada “Pedidos nuevos”.

SELECT DISTINCT nombre cliente
INTO pedidos nuevos
FROM pedidos;
sql

Transferir las entradas de clientes de una determinada región

Con la cláusula WHERE puedes elegir los datos de cliente que cumplen ciertas condiciones. Por ejemplo, así es como puedes transferir las entradas de clientes que vienen de Alemania:

SQL Server:

SELECT nombre cliente, país
INTO pedidos nuevos
FROM pedidos
WHERE país = 'Alemania';
sql

MySQL, PostgreSQL, SQlite:

INSERT INTO Pedidos nuevos (nombre cliente, país)
SELECT nombre cliente, país
FROM pedidos
WHERE país = 'Alemania';
sql

Alternativas a SQL SELECT INTO

Para copiar y transferir datos entre tablas, hay varias opciones además de SELECT INTO. Estas son las más importantes:

  • INSERT INTO SELECT: SQL INSERT INTO SELECT permite copiar y pegar conjuntos de datos o resultados de una tabla a otra ya existente. La principal diferencia es que con SELECT INTO se crea una tabla nueva donde pegar los datos.
  • CREATE TABLE AS: Con la asignación SQL CREATE TABLE puedes crear una tabla nueva. Combinándola con SQL SELECT y AS puedes elegir que la tabla nueva se base en los resultados de la orden SELECT y por tanto debe contener los datos elegidos de una tabla existente.
  • UNION o UNION ALL: Con el operador SQL UNION puedes unificar los datos de las tablas y columnas que quieras en una nueva tabla meta sin duplicados. Si se combina con el operador ALL, puedes decidir que se tengan en cuenta que todos los conjuntos de datos de una tabla, incluyendo los duplicados.
  • IMPORT TABLE: La instrucción IMPORT TABLE solo es adecuada para importar datos de una tabla externa y archivos de una tabla. El comando está disponible sobre todo en las versiones más nuevas de SQL.
  • LOAD DATA INFILE: Esta instrucción funciona como IMPORT TABLE, pero es más flexible, también más compleja en uso, y soporta más formatos de fuentes externas. Además está disponible en todas las versiones de SQL.
¿Le ha resultado útil este artículo?
Page top