logo

Diferència entre unió esquerra i unió exterior esquerra

La base de dades en qualsevol sistema informàtic és la col·lecció de dades estructurades o no estructurades que es poden utilitzar per realitzar diverses opcions com ara la creació, la supressió, etc. Aquesta base de dades està gestionada per un llenguatge especial conegut com a SQL . En llenguatge SQL hi ha diferents unions que s'utilitzen per muntar files de dues o més taules de la columna relacionada. Algunes de les unions ho són Combinació interna , Uneix-te a l'esquerra , i Uneix-te a la dreta . En aquest article, explorarem els conceptes amb exemples Uneix-te a l'esquerra i unió exterior esquerra. Juntament amb això, també repassarem les seves principals diferències.

Uneix-te a l'esquerra

Left Join en llenguatge SQL s'utilitza per retornar totes les dades o registres de la taula de l'esquerra i les dades o registres coincidents de la taula dreta. En l'escenari, on no hi ha coincidència, la unió encara consta de les files de la taula de l'esquerra i mostra el Valors NULL per a les columnes de la taula dreta.



En el context de la consulta, a continuació es mostra la sintaxi de la unió esquerra.

Sintaxi

SELECT columnes FROM left_table

LEFT JOIN right_table ON



condició_unir-se;

Ara, anem a entendre la unió esquerra a través d'un exemple senzill:

Exemple:



1. Taula de dades_client:

ID de client

Nom del client

1

Gaurav

2

nombre d'armstrong

Anjali

3

Ramesh

2. Comandes_Taula de dades:

id_ordre

ID de client

data d'Ordre

1

1

2023-01-23

2

1

2023-02-03

3

3

2023-03-05

4

4

2023-04-10

Consulta d'unió a l'esquerra

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;>

Resultat/sortida

ID de client

parell de java

Nom del client

id_ordre

data d'Ordre

1

Gaurav

1

2023-01-23

1

Gaurav

2

2023-02-03

2

Anjali

NUL

NUL

3

Ramesh

3

2023-03-05

Explicació

En l'exemple anterior. Left Join inclou totes les files de la taula de l'esquerra ( Dades_client ) i els va relacionar amb les files corresponents de la taula dreta ( Dades_comandes ). Aquí, el client Gaurav té 2 comandes, Anjali no té comandes (NULL) i Ramesh té 1 comanda.

Unió exterior esquerra

El concepte de Unió exterior esquerra és similar i igual a la unió esquerra, i aquests dos termes s'utilitzen indistintament. La paraula clau que s'utilitza aquí és Exterior , que és opcional i tampoc afecta el resultat.

Vegem la sintaxi de Left Outer Join:

Sintaxi

SELECCIONA columnes

DES de la taula_esquerra

LEFT OUTER JOIN right_table ON

condició_unir-se;

concatenació de cadenes

Exemple:

Considerem les mateixes taules utilitzades a l'exemple d'unió a l'esquerra anterior:

Consulta d'unió exterior esquerra

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;>

Resultat/sortida

ID de client

Nom del client

id_ordre

data d'Ordre

1

Gaurav

1

recompte de mysql

2023-01-23

1

Gaurav

2

2023-02-03

2

Anjali

NUL

NUL

3

Ramesh

3

2023-03-05

4

NUL

NUL

ipconfig a Ubuntu

NUL

Explicació

A l'exemple anterior, els registres que no coincideixen de la taula de la dreta ( Dades_comandes ) s'inclouen i es mostren els valors NULL per a les columnes de la taula dreta. Així, el client amb ‘ ID de client 4 en el Dades_comandes taula, que no té cap registre coincident al Dades_client La taula també s'inclou al conjunt de resultats i es mostren els valors NULL, que no es mostraven en la condició d'unió esquerra.

Diferència entre unió esquerra i unió exterior esquerra

Paràmetre

Uneix-te a l'esquerra

Unió exterior

Registres coincidents

A Left Join, s'inclouen els registres coincidents de la taula de la dreta.

A Left Outer Join, s'inclouen els registres coincidents de les taules de la dreta.

Registres que no coincideixen

A Left Join, s'exclouen els registres que no coincideixen de la taula més a la dreta.

A Left Outer Join, s'inclouen els registres que no coincideixen de la taula dreta i es mostra el valor NULL per a les columnes de la taula dreta.

Uneix-te a la paraula clau

UNIR-SE A L'ESQUERRA

UNIÓ EXTERIOR ESQUERRA

Valors nuls

No es mostra cap valor NULL per a les columnes de la taula dreta.

Els valors NULL es mostren per a les columnes de la taula dreta en cas que no hi hagi coincidència.

Sintaxi

SELECT columns FROM left_table LEFT JOIN right_table ON join_condition;

SELECT columns FROM left_table LEFT OUTER JOIN right_table ON join_condition;

Preguntes freqüents sobre la unió a l'esquerra i la unió externa a l'esquerra

1. Quan hem d'utilitzar un Left Join?

Left Join s'ha d'utilitzar quan necessitem tornar totes les files de la taula més a l'esquerra, fins i tot si no hi ha files coincidents a la taula més dreta. Això és útil en l'escenari quan volem llistar totes les dades de la taula de l'esquerra, independentment de si conté dades a la taula de la dreta.

2. Quins són els avantatges d'utilitzar Left Join?

Hi ha diversos tipus d'avantatges d'utilitzar Left Join, que potencialment ens permet mostrar totes les dades a la taula de l'esquerra, tot i que no té cap dada a la taula dreta. Això es pot utilitzar per a tasques d'auditoria.

3. Explica els resultats de Left Outer Join.

Els resultats de Left Outer Join consisteixen en files de la taula de l'esquerra i també les files coincidents de la taula dreta. En cas que no hi hagi files coincidents de la taula de la dreta, les columnes corresponents del conjunt de resultats es mostraran com a NULL.

4. Podem utilitzar la clàusula ORDER BY juntament amb Left Outer Join?

Sí, podem utilitzar la clàusula ORDER BY juntament amb Left Outer Join a la consulta. Això ordenarà els resultats de la unió com ho faria amb qualsevol altra consulta.