INTERSECT devuelve solo aquellas filas que aparecen tanto en la primera como en la segunda consulta. Las consultas deben coincidir en el número de columnas, el orden y el tipo. El resultado de INTERSECT puede contener filas duplicadas.
Varias sentencias INTERSECT se ejecutan de izquierda a derecha si no se especifican paréntesis. El operador INTERSECT tiene mayor prioridad que las cláusulas UNION y EXCEPT.
Ejemplos
Query
Response
INTERSECT es útil si tienes dos tablas que comparten una o varias columnas. Puedes obtener la intersección de los resultados de dos consultas, siempre que los resultados contengan las mismas columnas. Por ejemplo, supongamos que tenemos unos cuantos millones de filas de datos históricos de criptomonedas que incluyen precios de operaciones y volumen:
Query
Response
holdings que contiene una lista de las criptomonedas que tenemos, junto con el número de monedas:
Query
INTERSECT para responder preguntas como “¿Qué monedas tenemos que hayan cotizado por encima de $100?”:
Query
Response
INTERSECT DISTINCT
DISTINCT a INTERSECT para eliminar las filas duplicadas del resultado:
Query
Response