• Saltar a la navegación principal
  • Saltar al contenido principal

DBA dixit

Recursos en línea para el administrador y el desarrollador de bases de datos

  • Lo básico
  • SQL
  • Administración
  • Herramientas
  • Buenas prácticas
  • Performance & Tuning
Usted está aquí: Inicio / SQL / INTERSECT en SQL

INTERSECT en SQL

23/07/2021 by DBA

INTERSECT en SQL

INTERSECT es otro de los operadores de conjunto de SQL que permite trabajar con dos tablas similares (mismo número de campos y del mismo tipo de datos cada campo) y permite hacer operaciones de conjuntos. En el caso de INTERSECT se trata de la intersección de dos conjuntos de la siguiente manera

Intersección de tablas

El uso de INTERSECT entre dos conjuntos de datos regresa los registros que están en el primer conjunto de datos que también están en el segundo conjunto de datos. Trabajaremos con el siguiente caso de prueba, con las tablas A, B y C (es el mismo conjunto de tablas que se utilizó en la explicación del UNION y UNION ALL).

3 tablas de prueba para el UNION y el UNION ALL

Ejemplo de INTERSECT

En este caso, si se realiza la intersección entre la tabla A y la tabla B, por medio del siguiente query

SELECT * FROM a
INTERSECT
SELECT * FROM b;

El resultado es el siguiente

Ejemplo de INTERSECT

Como puede observarse, solo se regresa un registro, que corresponde al único registro que sus tres campos son exactamente iguales tanto en la tabla A como en la tabla B.

Plan de ejecución

Para poder realizar o ejecutar el INTERSECT, el motor de bases de datos debe recorrer cada uno de los registros de una tabla y verificar si existe un registro exactamente igual en la segunda tabla. En el caso de SQL Server este plan de ejecución puede verificarse fácilmente y se obtiene lo siguiente.

 

Plan de ejecución de INTERSECT

Publicado en: Lo básico, SQL

  • Lo básico
  • SQL
  • Administración
  • Herramientas
  • Buenas prácticas
  • Performance & Tuning

Copyright © 2023 · Wellness Pro on Genesis Framework · WordPress · Acceder