JOINS in SQL Server: tutorial con esempi
Possiamo recuperare i dati da più di una tabella utilizzando l'istruzione JOIN. Esistono principalmente 4 diversi tipi di JOINS nel server SQL. Impareremo tutti i JOIN Server SQL con esempi:
- INNER JOIN/unione semplice
- JOIN ESTERNO SINISTRO/JUN SINISTRO
- GIUNZIONE ESTERNA DESTRA/GIUNTA DESTRA
- COMPLETO ESTERNO JOIN
INNER JOIN
Questo tipo di JOIN del server SQL restituisce righe da tutte le tabelle in cui la condizione di join è vera. Utilizza la seguente sintassi:
SELECT columns FROM table_1 INNER JOIN table_2 ON table_1.column = table_2.column;
Per dimostrarlo utilizzeremo le due tabelle seguenti:
Tavolo Studenti:
Tabella delle tariffe:
Il seguente comando dimostra un INNER JOIN in SQL Server con un esempio:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students INNER JOIN Fee ON Students.admission = Fee.admission
Il comando restituisce quanto segue:
Possiamo dire agli studenti che hanno pagato la quota. Abbiamo utilizzato la colonna con valori comuni in entrambe le tabelle, ovvero la colonna di ammissione.
UNIONE ESTERNO SINISTRO
Questo tipo di join restituirà tutte le righe della tabella di sinistra più i record nella tabella di destra con valori corrispondenti. Per esempio:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students LEFT OUTER JOIN Fee ON Students.admission = Fee.admission
Il codice restituisce quanto segue:
I record senza valori corrispondenti vengono sostituiti con NULL nelle rispettive colonne.
GIUNZIONE ESTERNA DESTRA
Questo tipo di join restituisce tutte le righe della tabella di destra e solo quelle con valori corrispondenti nella tabella di sinistra. Per esempio:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students RIGHT OUTER JOIN Fee ON Students.admission = Fee.admission
L'istruzione per OUTER JOINS SQL Server restituisce quanto segue:
Il motivo dell'output precedente è che tutte le righe nella tabella Tariffe sono disponibili nella tabella Studenti quando corrispondono nella colonna di ammissione.
COMPLETO ESTERNO JOIN
Questo tipo di join restituisce tutte le righe di entrambe le tabelle con valori NULL in cui la condizione JOIN non è vera. Per esempio:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students FULL OUTER JOIN Fee ON Students.admission = Fee.admission
Il codice restituisce il seguente risultato per le query FULL OUTER JOINS in SQL: