Resumen: En este tutorial, aprenderá cómo usar el operador SQL Server EXISTS
en la condición para probar la existencia de filas en una subconsulta.
SQL Server EXISTS operator overview
el operador EXISTS
es un operador lógico que le permite comprobar si una subconsulta devuelve alguna fila. El operador EXISTS
devuelve TRUE
si la subconsulta devuelve una o más filas.,
a continuación se muestra la sintaxis del operador SQL Server EXISTS
:
Code language: SQL (Structured Query Language) (sql)
en esta sintaxis, la subconsulta es una instrucción SELECT
solamente. Tan pronto como la subconsulta devuelve filas, el operador EXISTS
devuelve TRUE
y detiene el procesamiento inmediatamente.
tenga en cuenta que aunque la subconsulta devuelve un valor NULL
, el operador EXISTS
sigue siendo evaluado como TRUE
.,
SQL Server EXISTS operator examples
tomemos algunos ejemplos para comprender cómo funciona el operador EXISTS
.
A) usar EXISTS con una subconsulta devuelve un ejemplo nulo
vea la siguiente tabla customers
de la base de datos de ejemplo.,
El siguiente ejemplo devuelve todas las filas de la etiqueta customers
tabla:
En este ejemplo, la subconsulta devuelve un conjunto de resultados que contiene NULL
que hace que el EXISTS
operador evaluar a TRUE
. Por lo tanto, toda la consulta devuelve todas las filas de la tabla customers
.,
B) Utilizando EXISTE con una subconsulta correlacionada ejemplo
Considere el siguiente customers
y orders
tablas:
El siguiente ejemplo busca todos los clientes que han colocado a más de dos órdenes:
En este ejemplo, hemos tenido una subconsulta correlacionada que devuelve a los clientes que colocar más de dos órdenes.,
si el número de pedidos realizados por el cliente es menor o igual a dos, la subconsulta devuelve un conjunto de resultados vacío que hace que el operador EXISTS
evalúe a FALSE
.
basado en el resultado del operador EXISTS
, el cliente se incluirá en el conjunto de resultados.
C) EXISTE vs, EN el ejemplo
La siguiente expresión se utiliza la etiqueta IN
operador para encontrar los pedidos de los clientes desde San José:
La siguiente expresión se utiliza la etiqueta EXISTS
operador que devuelve el mismo resultado:
EXISTE vs JOIN
El EXISTS
operador devuelve TRUE
o FALSE
mientras que el JOIN
cláusula devuelve las filas de la otra tabla.,
utiliza el operadorEXISTS
para probar si una subconsulta devuelve cualquier fila y cortocircuitos tan pronto como lo hace. Por otro lado, se usa JOIN
para extender el conjunto de resultados combinándolo con las columnas de tablas relacionadas.
en la práctica, utiliza el EXISTS
cuando solo necesita verificar la existencia de filas de tablas relacionadas sin devolver datos de ellas.
en este tutorial, ha aprendido a usar el operador SQL Server EXISTS
para probar si una subconsulta devuelve filas.