Resumen: En este tutorial, aprenderá sobre la cláusula SQL Server LEFT JOIN
y cómo usarla para consultar datos de varias tablas.
introducción a la cláusula de unión izquierda de SQL Server
la cláusulaLEFT JOIN
le permite consultar datos de varias tablas. Devuelve todas las filas de la tabla izquierda y las filas coincidentes de la tabla derecha. Si no se encuentran filas coincidentes en la tabla derecha, se usa NULL
.,
lo siguiente ilustra cómo unir dos tablas T1 y T2 usando la cláusula LEFT JOIN
:
Code language: SQL (Structured Query Language) (sql)
en esta sintaxis, T1 y T2 son las tablas izquierda y derecha respectivamente.
para cada fila de la tabla T1, la consulta la compara con todas las filas de la tabla T2. Si un par de filas hace que el predicado de unión se evalúe como TRUE
, los valores de columna de estas filas se combinarán para formar una nueva fila que luego se incluirá en el conjunto de resultados.,
si una fila de la tabla izquierda (T1) no tiene ninguna fila coincidente de la tabla T2, la consulta combina los valores de columna de la fila de la tabla izquierda con NULL
para cada valor de columna de la tabla derecha.
En resumen, la cláusula LEFT JOIN
devuelve todas las filas de la tabla izquierda (T1) y las filas coincidentes o NULL
valores de la tabla derecha (T2).
lo siguiente ilustra el LEFT JOIN
de dos tablas T1(1, 2, 3) y T2 (A, B, C)., El LEFT JOIN
coincidirá las filas de la tabla T1 con las filas de la tabla T2 utilizando patrones:
en esta ilustración, ninguna fila de la tabla T2 coincide se utiliza la fila 1 de la tabla T1, por lo tanto, null. Las filas 2 y 3 de la tabla T1 coinciden con las filas A y B de la tabla T2 respectivamente.,
SQL Server LEFT JOIN ejemplo
el siguiente products
y order_items
tablas:
Cada posición de pedido de cliente incluye un producto. El enlace entre las tablas order_items
y products
es la columna product_id
.,
la siguiente instrucción utiliza la cláusula LEFT JOIN
para consultar datos de las tablas products
y order_items
:
como puede ver claramente en el conjunto de resultados, una lista de NULL
en la columna order_id
indica que los productos correspondientes aún no se han vendido a ningún cliente.
es posible utilizar la cláusula WHERE
para limitar el conjunto de resultados., La siguiente consulta devuelve los productos que no aparecen en ningún pedido de venta:
como siempre, SQL Server procesa la cláusula WHERE
clause.,
The following example shows how to join three tables: production.products
, sales.orders
, and sales.order_items
using the LEFT JOIN
clauses:
Here is the output:
SQL Server LEFT JOIN: conditions in ON vs., Donde cláusula
la siguiente consulta encuentra los productos que pertenecen al ID de orden 100:
movamos la condición order_id = 100
a la cláusula ON
:
la consulta devolvió todos los productos, pero solo el pedido con ID 100 tiene la información del producto asociada.,
tenga en cuenta que para la cláusula INNER JOIN
, la condición en la cláusula ON
es funcionalmente equivalente si se coloca en la cláusula WHERE
.
en este tutorial, ha aprendido a usar la cláusula SQL Server LEFT JOIN
para recuperar datos de varias tablas relacionadas.
Deja una respuesta