Buenas tardes queridos lectores, el día de hoy
veremos cómo crear una tabla nueva en SQL SERVER a partir de una
consulta SELECT, pero vayamos a los ejemplos y luego a la explicación:
Ejemplo 1: Script que permita replicar los
registros de la tabla PASAJERO en una nueva tabla llamada MIS PASAJEROS.
Utilizaremos la cláusula INTO
Hay que tener en cuenta que la cláusula INTO permite crear la
tabla y además definir sus columnas en base a las columnas especificadas en la
consulta. Vamos a ver el script que realiza el proceso
IF OBJECT_ID('MISPASAJEROS') IS NOT NULL
BEGIN
DROP TABLE MISPASAJEROS
END
GO
SELECT P.*
INTO
MISPASAJEROS
FROM
PASAJERO P
GO
SELECT * FROM MISPASAJEROS
GO
En el primer bloque se tiene que verificar
que la tabla no existe para poder continuar con el proceso de creación y
asignación de valores, caso contrario se tendrá que eliminar la tabla. En este
caso se usa la función OBJECT_ID
para verificar que existe la tabla MISPASAJEROS
al asignarle IS NOT NULL estamos
indicando que la tabla si existe, dentro de la condicional se especifica la
eliminación de la tabla con sentencia DROP
TABLE.
En el segundo bloque se hace referencia a
todas las columnas de la tabla de origen con P.* donde P es el alias de la
tabla PASAJERO, luego se especifica
la nueva tabla con INTO MISPASAJEROS,
como en el primero bloque se verificó que la tabla no existía, entonces esta
línea no causará errores al usuario, finalmente se especifica de donde
provienen los datos de origen con FROM
PASAJERO P.
En el último bloque se hace la consulta en
referencia a la nueva tabla creada por consecuencia de la consulta del segundo
bloque.
Podríamos usar la misma tabla para
replicar a los pasajeros que cumplan con una determinada condición como por
ejemplo, que copie solo a los pasajeros que tengan el correo HOTMAIL. Para esto, debemos colocar el
siguiente script:
IF OBJECT_ID('MISPASAJEROS') IS NOT NULL
BEGIN
DROP TABLE MISPASAJEROS
END
GO
SELECT P.*
INTO
MISPASAJEROS
FROM
PASAJERO P
WHERE P.EMAIL LIKE '%HOTMAIL%'
GO
SELECT * FROM MISPASAJEROS
GO
Como notará en el segundo bloque se hace
referencia a la condición de solo email de HOTMAIL usando la clausula WHERE que explicaremos en otra ocasión.
Hasta aquí el post queridos lectores, pero vamos a continuar con más de la sentencia SELECT, ya que es muy completa, espero comenten, le den +1 o algún clic a algún anuncio de su interés.
Saludos a todos
No hay comentarios.:
Publicar un comentario