SQL

Cómo usar el operador INTERSECT de SQL Server para consultar dos o más tablas

Estrada Web Group
Estrada Web Group
Cómo usar el operador INTERSECT de SQL Server para consultar dos o más tablas

Resumen: en este tutorial, aprenderás a usar el operador INTERSECT de SQL Server para combinar los resultados de dos consultas en un único resultado que regresa las filas comunes para ambas consultas. Es decir, funcionaría como un AND lógico: devuelve solo las filas existentes en ambas consultas.

Introducción a SQL Server INTERSECT

SQL Server INTERSECT combina conjuntos de resultados de dos o más consultas y devuelve las filas que se encuentran en ambas consultas.
Este operador combina los resultados de dos consultas en un único resultado que regresa todas las filas comunes para ambas consultas. Es decir, funcionaría como un AND lógico: devuelve solo las filas existentes en ambas consultas.

A continuación, se ilustra la sintaxis de SQL Server INTERSECT:

query_1
INTERSECT
query_2

INTERSECT es similar al operador UNION, las consultas en la sintaxis anterior deben cumplir con las siguientes reglas:

  • Ambas consultas deben tener el mismo número y orden de columnas.
  • El tipo de datos de las columnas correspondientes debe ser el mismo o compatible.

Cómo funciona INTERSECT de SQL

INTERSECT SQL SERVER

 

 

La imagen anterior ilustra cómo funciona INTERSECT:
En esta ilustración, teníamos dos conjuntos de resultados T1 y T2:

  • El conjunto de resultados T1 incluye 1, 2 y 3.
  • El conjunto de resultados T2 incluye 2, 3 y 4.

La intersección de los conjuntos de resultados T1 y T2 devuelve las filas iguales que son 2 y 3, las cuales se encuentran en las dos consultas.

Ejemplo de INTERSECT de SQL Server

Considera la siguiente consulta, utilizando la base de datos de pruebas:

SELECT    city
FROM    sales.customers
INTERSECT
SELECT    city
FROM    sales.stores
ORDER BY    city;

Resultado:

city
Baldwin
Rowlett
Santa Cruz

La primera consulta encuentra todas las ciudades de los clientes y la segunda consulta encuentra las ciudades de las tiendas. Toda la consulta, que utiliza INTERSECT, devuelve las ciudades comunes de clientes y tiendas, que son las ciudades que generan ambas consultas de entrada.

Observa que agregamos la cláusula ORDER BY a la última consulta para ordenar el conjunto de resultados.

En este tutorial, has aprendido a utilizar el operador INTERSECT de SQL Server para devolver la intersección de los conjuntos de resultados de dos consultas.

 

 

 

Compartir artículo:

Más artículos geniales

¿Cómo filtar registos con una subconsulta usando el operador ALL de SQL Server?

¿Cómo filtar registos con una subconsulta usando el operador ALL de SQL Server?

Resumen: en este tutorial, aprenderás a usar el operador ALL de SQL Server para comparar un valor con una lista de conjuntos de valores de una columna.

Ver artículo completo
¿Qué son las sentencias INNER JOIN de SQL y cómo funciona?

¿Qué son las sentencias INNER JOIN de SQL y cómo funciona?

En este tutorial, aprenderás a usar la cláusula o sentencia INNER JOIN de SQL Server para realizar consultar datos en varias tablas.

Ver artículo completo
¿Cómo obtener una subcadena de una cadena de caracteres en SQL Server con la función Substring?

¿Cómo obtener una subcadena de una cadena de caracteres en SQL Server con la función Substring?

En este tutorial, aprenderá a usar la función SUBSTRING() de SQL Server para extraer una subcadena de una cadena.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla