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:

INNER JOIN

Tabella delle tariffe:

INNER JOIN

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:

INNER JOIN

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:

UNIONE ESTERNO SINISTRO

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:

GIUNZIONE ESTERNA DESTRA

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:

COMPLETO ESTERNO JOIN

Newsletter quotidiana di Guru99

Inizia la giornata con le ultime e più importanti notizie sull'intelligenza artificiale, pubblicate in questo momento.