La base de datos en cualquier sistema informático es la colección de datos estructurados o no estructurados que se pueden utilizar para realizar diversas opciones como creación, eliminación, etc. Esta base de datos se administra mediante un lenguaje especial conocido como SQL . En el lenguaje SQL existen diferentes uniones que se utilizan para ensamblar filas de dos o más tablas de la columna relacionada. Algunas de las uniones son Unir internamente , Unirse a la izquierda , y Unirse a la derecha . En este artículo, exploraremos los conceptos con ejemplos de Unirse a la izquierda y unión exterior izquierda. Junto a esto, también repasaremos sus principales diferencias.
Unirse a la izquierda
La unión izquierda en lenguaje SQL se utiliza para devolver todos los datos o registros de la tabla de la izquierda y los datos o registros coincidentes de la tabla de la derecha. En el escenario en el que no hay coincidencias, la combinación aún consta de las filas de la tabla de la izquierda y muestra el valores NULL para las columnas de la tabla de la derecha.
En el contexto de la consulta, a continuación se muestra la sintaxis de Left Join.
Sintaxis
SELECCIONE columnas DE left_table
UNIRSE A LA IZQUIERDA tabla_derecha ACTIVADA
condición_unión;
Ahora, comprendamos la unión izquierda a través de un ejemplo simple:
Ejemplo:
1. Tabla Customer_Data:
| Identificación del cliente | Nombre del cliente |
|---|---|
| 1 | Gaurav |
| 2 matriz de cadenas programación c | anjali |
| 3 | Ramesh |
2. Tabla Orders_Data:
| Solicitar ID | Identificación del cliente | fecha de orden |
|---|---|---|
| 1 | 1 | 2023-01-23 |
| 2 | 1 | 2023-02-03 |
| 3 | 3 | 2023-03-05 |
| 4 | 4 | 2023-04-10 |
Consulta de unión izquierda
SELECT Customer_Data.customer_id, Customer_Data.customer_name, Orders_Data.order_id, Orders_Data.order_date FROM Customers_Data LEFT JOIN Orders ON Customers_Data.customer_id = Orders_Data.customer_id;>
Resultado/Salida
| Identificación del cliente no es igual a mysql | Nombre del cliente | Solicitar ID | fecha de orden |
|---|---|---|---|
| 1 | Gaurav | 1 | 2023-01-23 |
| 1 | Gaurav | 2 | 2023-02-03 |
| 2 | anjali | NULO | NULO |
| 3 | Ramesh | 3 | 2023-03-05 |
Explicación
En el ejemplo anterior. Left Join incluye todas las filas de la tabla izquierda ( Datos de los clientes ) y los emparejó con las filas correspondientes de la tabla derecha ( Pedidos_Datos ). Aquí, el cliente Gaurav tiene 2 pedidos, Anjali no tiene pedidos (NULL) y Ramesh tiene 1 pedido.
Izquierda combinación externa
El concepto de Izquierda combinación externa es similar e igual a Left Join, y ambos términos se usan indistintamente. La palabra clave utilizada aquí es Exterior , que es opcional y tampoco afecta el resultado.
Veamos la sintaxis de Left Outer Join:
Sintaxis
SELECCIONAR columnas
DE tabla_izquierda
UNIÓN EXTERNA IZQUIERDA tabla_derecha ACTIVADA
condición_unión;
mesas en latex
Ejemplo:
Consideremos las mismas tablas utilizadas en el ejemplo de unión izquierda anterior:
Consulta de unión externa izquierda
SELECT Customer_Data.customer_id, Customer_Data.customer_name, Orders_Data.order_id, Orders_Data.order_date FROM Customers_Data LEFT OUTER JOIN Orders ON Customers_Data.customer_id = Orders_Data.customer_id;>
Resultado/Salida
| Identificación del cliente | Nombre del cliente | Solicitar ID | fecha de orden |
|---|---|---|---|
| 1 | Gaurav | 1 ¿Cuál es el caso en SQL? | 2023-01-23 |
| 1 | Gaurav | 2 | 2023-02-03 |
| 2 | anjali | NULO | NULO |
| 3 | Ramesh | 3 | 2023-03-05 |
| 4 | NULO | NULO compareto java | NULO |
Explicación
En el ejemplo anterior, los registros que no coinciden de la tabla derecha ( Pedidos_Datos ) se incluyen y se muestran valores NULL para las columnas de la tabla derecha. Así, el cliente con ' Identificación del cliente ‘ 4 en el Pedidos_Datos tabla, que no tiene un registro coincidente en el Datos de los clientes La tabla también se incluye en el conjunto de resultados y se muestran los valores NULL, que no se mostraban en la condición Unión izquierda.
Diferencia entre unión izquierda y unión exterior izquierda
| Parámetro | Unirse a la izquierda | Unión externa |
|---|---|---|
| Registros coincidentes | En Left Join, se incluyen los registros coincidentes de la tabla derecha. | En la unión externa izquierda, se incluyen los registros coincidentes de las tablas de la derecha. |
| Registros no coincidentes | En Left Join, se excluyen los registros que no coinciden de la tabla situada más a la derecha. | En la unión externa izquierda, se incluyen los registros que no coinciden de la tabla derecha y se muestra el valor NULL para las columnas de la tabla derecha. |
| Unirse a palabra clave | UNIRSE A LA IZQUIERDA | IZQUIERDA COMBINACIÓN EXTERNA |
| Valores nulos | No se muestran valores NULL para las columnas de la tabla derecha. | Los valores NULL se muestran para las columnas de la tabla derecha en caso de que no haya coincidencias. |
| Sintaxis | SELECCIONE columnas DE left_table IZQUIERDA JOIN right_table ON join_condition; | SELECCIONE columnas DE tabla_izquierda UNIÓN EXTERNA IZQUIERDA tabla_derecha EN condición_unión; |
Preguntas frecuentes sobre la unión izquierda y la unión exterior izquierda
1. ¿Cuándo deberíamos utilizar una combinación izquierda?
La unión izquierda debe usarse cuando necesitamos devolver todas las filas de la tabla más a la izquierda, incluso si no hay filas coincidentes en la tabla más a la derecha. Esto es útil en el escenario en el que queremos enumerar todos los datos de la tabla de la izquierda, independientemente de si contiene datos en la tabla de la derecha.
2. ¿Cuáles son los beneficios de utilizar Left Join?
Hay varios tipos de beneficios al usar Left Join, potencialmente nos permite mostrar todos los datos en la tabla de la izquierda, aunque no tenga ningún dato en la tabla de la derecha. Esto se puede utilizar para tareas de auditoría.
3. Explique los resultados de la unión exterior izquierda.
Los resultados de Left Outer Join constan de filas de la tabla de la izquierda y también de las filas coincidentes de la tabla de la derecha. En caso de que no haya filas coincidentes en la tabla de la derecha, las columnas correspondientes en el conjunto de resultados se mostrarán como NULL.
4. ¿Podemos utilizar la cláusula ORDER BY junto con Left Outer Join?
Sí, podemos usar la cláusula ORDER BY junto con Left Outer Join en la consulta. Esto ordenará los resultados de la unión como lo haría con cualquier otra consulta.