martes, 11 de enero de 2011

Las CTE (Common Table Expression)

Anteriormente utilizaba de manera regular las tablas temporales o las variables tipo tabla. En ambos casos tenia que definir la estructura de la tabla y posteriormente llenarla con datos y por último manipularla.

Ahora, utilizando las CTE, basta con declarar que columnas vamos a utilizar de la consulta para que se genere esa tabla sin ningún código adicional. El único inconveniente con el que me he encontrado, es que inmediatamente después de la CTE debe venir el SELECT, INSERT, UPDATE o DELETE con el que se desea utilizar los datos, puesto que posteriormente ya no se encuentra disponible.
A continuación agrego un ejemplo:
WITH TablaCTE(IdRegistro, ColumnaUno) AS
(
   SELECT IdRegistro, ColumnaUno
     FROM TablaOriginal
    WHERE MyCondicion
)
SELECT IdRegistro, ColumnaUno
FROM TablaCTE

No hay comentarios:

Publicar un comentario