Crear tabla a partir de una consulta a otra tabla
SQL Server
- Por Programador ASP clásico /
- 11/07/2013 @ 16:18:55 /
- 1009 visitas
En SQL es posible crear una tabla e insertar datos en ella en una sola sentencia consultando otra tabla (o varias):
select CAMPOS_NUEVA_TABLA
into NUEVA_TABLA
from TABLA
where CONDICION;
Es decir, se crea una nueva tabla y se inserta en ella el resultado de una consulta a otra tabla.
Un ejemplo prácitco sería el siguiente:
En un sistema web tenemos una tabla llamada "clientes" y necesitamos crear otra tabla identificada como "pais" que contenga los nombres de los paises.
La tabla "pasies", que vamos a crear, contendrá solamente un campo llamado "nombre_pais". La tabla clientes contiene varios registros con paises diferentes.
Podemos crear la tabla "paises" con el campo "nombre_pais" consultando la tabla "clientes" y en el mismo momento insertar la información:
select distinct (pais) as nombre_pais
into paises
from clientes
where activo=1
Los campos de la nueva tabla tienen el mismo nombre, tipo de dato y valores almacenados que los campos listados de la tabla consultada; si se quiere dar otro nombre a los campos de la nueva tabla se deben especificar alias.
Nota: se puede emplear "group by", funciones de agrupamiento y "order by" en las consultas. También podemos emplear "select... into" con combinaciones, para crear una tabla que contenga
tags: