Una característica implementada desde la versión 2005, y una que siempre había estado buscado, una especie de “anti-join”, que en lugar de unir las tablas las separe según ciertos parámetros.
Se puede considerar como la función contraria de UNION, ya que su función es devolver los registros de una consulta que no se encuentran en otra. Automáticamente devuelve los valores distintos.
La sintaxis es la siguiente:
SELECT [Col1], [Col2], ... [ColN]
FROM [Tabla1]
EXCEPT
SELECT [Col1], [Col2], ... [ColN]
FROM [Tabla2]
Ejemplo: Si queremos obtener una lista de productos que no han sido vendidos:
SELECT SKU
FROM Productos
EXCEPT
SELECT SKU
FROM Ventas
EXCEPT, como unión, tiene como regla que las consultas comparadas deben tener el mismo número de columnas y los mismos tipos de datos (o por lo menos, los tipos de datos sean comparables) en el mismo orden.
Y también como UNION, puede ser utilizado con más de dos consultas.
admin
August 11, 2011
SQL SERVER
No Comment