Articles

Subconsulta correlacionada de SQL Server

Resumen: en este tutorial, aprenderá sobre la subconsulta correlacionada de SQL Server, que es una subconsulta que depende de la consulta externa para sus valores.

Una subconsulta correlacionada es una subconsulta que utiliza los valores de la consulta externa. En otras palabras, depende de la consulta externa para sus valores. Debido a esta dependencia, una subconsulta correlacionada no se puede ejecutar de forma independiente como una subconsulta simple.

Además, una subconsulta correlacionada se ejecuta repetidamente, una vez por cada fila evaluada por la consulta externa. La subconsulta correlacionada también se conoce como subconsulta repetitiva.

Considere la siguiente tabla products de la base de datos de muestra:

productos

El siguiente ejemplo encuentra los productos cuyo precio de lista es igual al precio de lista más alto de los productos dentro de la misma categoría:

SELECT product_name, list_price, category_idFROM production.products p1WHERE list_price IN ( SELECT MAX (p2.list_price) FROM production.products p2 WHERE p2.category_id = p1.category_id GROUP BY p2.category_id )ORDER BY category_id, product_name;
Code language: SQL (Structured Query Language) (sql)

Aquí está el resultado:

Subconsulta correlacionada de SQL Server

En este ejemplo, para cada producto evaluado por la consulta externa, la subconsulta encuentra el precio más alto de todos los productos de su categoría. Si el precio del producto actual es igual al precio más alto de todos los productos de su categoría, el producto se incluye en el conjunto de resultados. Este proceso continúa para el siguiente producto y así sucesivamente.

Como puede ver, la subconsulta correlacionada se ejecuta una vez para cada producto evaluado por la consulta externa.

En este tutorial, ha aprendido sobre la subconsulta correlacionada de SQL Server.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *