Unió SQL L'operació combina dades o files de dues o més taules en funció d'un camp comú entre elles.
En aquest article, aprendrem sobre S'uneix a SQL, que cobreix els tipus, la sintaxi i els exemples de JOIN.
SQL JOIN
La clàusula SQL JOIN s'utilitza per consultar i accedir a dades de diverses taules mitjançant l'establiment de relacions lògiques entre elles. Pot accedir a dades de diverses taules simultàniament utilitzant valors clau comuns compartits entre diferents taules.
exemple de subcadena en java
Podem utilitzar SQL JOIN amb múltiples taules. També es pot combinar amb altres clàusules, l'ús més popular serà utilitzar JOIN with clàusula ON per filtrar la recuperació de dades.
Exemple SQL JOIN
Considereu les dues taules següents de la següent manera:
Estudiant:
Curs d'estudiants :

Aquestes dues taules estan connectades per una clau comuna (columna), és a dir, ROLL_NO.
Podem realitzar una operació JOIN mitjançant la consulta SQL donada:
SELECT s.roll_no, s.name, s.address, s.phone, s.age, sc.course_id FROM Student s JOIN StudentCourse sc ON s.roll_no = sc.roll_no;>
Sortida:
| ROLL_NO | NOM | ADREÇA | TELÈFON | EDAT | COURSE_ID |
| 1 | DURS | DELHI | XXXXXXXXX | 18 | 1 |
| 2 | PRÀCTICA | BIHAR | XXXXXXXXX | 19 | 2 |
| 3 | RIYANKA | SILGURI | XXXXXXXXX | 20 | 2 |
| 4 | PROFUNDA | RAMNAGAR | XXXXXXXXX | 18 | 3 |
| 5 | SAPTARHI | CALCUTA | XXXXXXXXX | 19 | 1 |
Tipus de JOIN en SQL
Hi ha molts tipus d'unions en SQL. Depenent del cas d'ús, podeu utilitzar diferents tipus de clàusula SQL JOIN. Aquests són els tipus SQL JOIN d'ús freqüent:
- COMBINACIÓ INTERNA
- UNIR-SE A L'ESQUERRA
- UNIR-SE A LA DRETA
- PARTICIPACIÓ COMPLETA
- UNIÓ NATURAL
SQL INNER JOIN
El COMBINACIÓ INTERNA paraula clau selecciona totes les files de les dues taules sempre que es compleixi la condició. Aquesta paraula clau crearà el conjunt de resultats combinant totes les files de les dues taules on la condició compleixi, és a dir, el valor del camp comú serà el mateix.
Sintaxi :
La sintaxi per a SQL INNER JOIN és:
SELECT table1.column1,table1.column2,table2.column1,.... FROM table1 INNER JOIN table2 ON table1.matching_column = table2.matching_column;>
Aquí,
- taula 1 : Primera taula.
- taula 2 : Segona taula
- columna_coincidència : Columna comuna a les dues taules.
Nota : També podem escriure JOIN en lloc d'INNER JOIN. JOIN és el mateix que INNER JOIN.

Exemple INNER JOIN
Vegem l'exemple de la clàusula INNER JOIN i entenem que funciona.
Aquesta consulta mostrarà els noms i l'edat dels estudiants matriculats en diferents cursos.
SELECT StudentCourse.COURSE_ID, Student.NAME, Student.AGE FROM Student INNER JOIN StudentCourse ON Student.ROLL_NO = StudentCourse.ROLL_NO;>
Sortida :

JOIN A L'ESQUERRA SQL
LEFT JOIN retorna totes les files de la taula del costat esquerre de la unió i coincideix amb les files de la taula del costat dret de la unió. Per a les files per a les quals no hi ha cap fila coincident al costat dret, el conjunt de resultats contindrà nul . LEFT JOIN també es coneix com LEFT OUTER JOIN.
Sintaxi
La sintaxi de LEFT JOIN en SQL és :
SELECT table1.column1,table1.column2,table2.column1,.... FROM table1 LEFT JOIN table2 ON table1.matching_column = table2.matching_column;>
Aquí,
- taula 1: Primera taula.
- taula 2 : Segona taula
- columna_coincidència : Columna comuna a les dues taules.
Nota : També podem utilitzar LEFT OUTER JOIN en lloc de LEFT JOIN, tots dos són iguals.
LEFT JOIN Exemple
Vegem l'exemple de la clàusula LEFT JOIN i entenem que funciona
SELECT Student.NAME,StudentCourse.COURSE_ID FROM Student LEFT JOIN StudentCourse ON StudentCourse.ROLL_NO = Student.ROLL_NO;>
Sortida :

UNICIÓ DRET SQL
UNIR-SE A LA DRETA retorna totes les files de la taula del costat dret de la unió i les files coincidents per a la taula del costat esquerre de la unió. És molt semblant a LEFT JOIN Per a les files per a les quals no hi ha cap fila coincident al costat esquerre, el conjunt de resultats contindrà nul . RIGHT JOIN també es coneix com RIGHT OUTER JOIN.
Sintaxi:
La sintaxi de RIGHT JOIN en SQL és:
SELECT table1.column1,table1.column2,table2.column1,.... FROM table1 RIGHT JOIN table2 ON table1.matching_column = table2.matching_column;>
Aquí,
- taula 1 : Primera taula.
- taula 2 : Segona taula
- columna_coincidència : Columna comuna a les dues taules.
Nota : També podem utilitzar UNIÓ EXTERIOR DRET en comptes de RIGHT JOIN, tots dos són iguals.

RIGHT JOIN Exemple :
Vegem l'exemple de la clàusula RIGHT JOIN i entenem que funciona
SELECT Student.NAME,StudentCourse.COURSE_ID FROM Student RIGHT JOIN StudentCourse ON StudentCourse.ROLL_NO = Student.ROLL_NO;>
Sortida:

UNICIÓ COMPLETA SQL
PARTICIPACIÓ COMPLETA crea el conjunt de resultats combinant els resultats de LEFT JOIN i RIGHT JOIN. El conjunt de resultats contindrà totes les files de les dues taules. Per a les files per a les quals no hi ha coincidència, el conjunt de resultats contindrà NUL valors.
Sintaxi
La sintaxi de SQL FULL JOIN és:
SELECT table1.column1,table1.column2,table2.column1,.... FROM table1 FULL JOIN table2 ON table1.matching_column = table2.matching_column;>
Aquí,
- taula 1 : Primera taula.
- taula 2 : Segona taula
- columna_coincidència : Columna comuna a les dues taules.
Exemple de FULL JOIN
Vegem l'exemple de la clàusula FULL JOIN i entenem que funciona
SELECT Student.NAME,StudentCourse.COURSE_ID FROM Student FULL JOIN StudentCourse ON StudentCourse.ROLL_NO = Student.ROLL_NO;>
Sortida:
| NOM | COURSE_ID |
|---|---|
| DURS | 1 |
| PRÀCTICA | 2 |
| RIYANKA | 2 |
| PROFUNDA | 3 |
| SAPTARHI | 1 |
| DHANRAJ | NUL |
| ROHIT miniaplicació d'applet | NUL |
| NIRAJ | NUL |
| NUL | 4 |
| NUL | 5 |
| NUL | 4 |
Unió natural SQL (?)
La unió natural pot unir taules en funció de les columnes comunes de les taules que s'uneixen. Una unió natural retorna totes les files fent coincidir els valors de les columnes comunes amb el mateix nom i tipus de dades de columnes i aquesta columna hauria d'estar present a les dues taules.
Les dues taules han de tenir almenys una columna comuna amb el mateix nom de columna i el mateix tipus de dades.
Les dues taules s'uneixen mitjançant Unió creuada .
El SGBD buscarà una columna comuna amb el mateix nom i tipus de dades Les tuples que tenen exactament els mateixos valors a les columnes comunes es mantenen al resultat.
Unió natural Exemple:
Mireu les dues taules següents: Empleat i Departament
| Empleat | ||
|---|---|---|
| Emp_id | Emp_nom | Dept_id |
| 1 | Ram | 10 |
| 2 | Jon | 30 |
| 3 | Bob | 50 |
| Departament | |
|---|---|
| Dept_id | Nom_departament |
| 10 | IT |
| 30 | RRHH |
| 40 | TIS |
Problema : Trobeu tots els empleats i els seus respectius departaments.
Consulta de solució : (empleat) ? (Departament)
| Emp_id | Emp_nom | Dept_id | Dept_id | Nom_departament |
|---|---|---|---|---|
| 1 | Ram | 10 | 10 | IT |
| 2 | Jon | 30 | 30 | RRHH |
| Dades dels empleats | Dades del departament |
Recursos addicionals
Per obtenir més informació sobre SQL JOIN, proveu de veure els nostres vídeos i llegir articles:
A l'esquerra JOIN (vídeo)
JOIN a la dreta (vídeo)
JOIN complet (vídeo)
SQL | JOIN (unió cartesiana, unió personal)