1. Il Concetto di JOIN nei Database Relazionali
Nei database relazionali, le informazioni sono suddivise in più tabelle normalizzate per evitare ridondanze. L'operazione di JOIN consente di ricombinare logicanente queste tabelle sfruttando relazioni basate su attributi comuni, tipicamente una chiave primaria (Primary Key) e una chiave esterna (Foreign Key).
1. INNER JOIN: Restituisce solo i record che presentano corrispondenze in entrambe
le tabelle.
2. LEFT (OUTER) JOIN: Restituisce tutti i record della tabella di sinistra e le
corrispondenze della tabella di destra (o valori NULL se assenti).
3. RIGHT (OUTER) JOIN: Restituisce tutti i record della tabella di destra e le
corrispondenze della tabella di sinistra.
4. FULL (OUTER) JOIN: Restituisce tutti i record quando vi è una corrispondenza
nell'una o nell'altra tabella.
2. Analisi dei Comandi di Giunzione
Esaminiamo il comportamento operativo delle diverse tipologie di join:
ON. I record orfani
di entrambe le tabelle vengono scartati.3. Tabella di Sintesi delle Operazioni di JOIN
Una panoramica rapida delle sintassi di giunzione e del loro comportamento logico:
| Tipo di JOIN | Sintassi di Base | Comportamento sui Dati |
|---|---|---|
| INNER JOIN | SELECT * FROM A JOIN B ON A.id = B.a_id; |
Estrae solo l'intersezione (corrispondenze esatte). |
| LEFT JOIN | SELECT * FROM A LEFT JOIN B ON A.id = B.a_id; |
Tutti i record di A + corrispondenze da B (o NULL). |
| CROSS JOIN | SELECT * FROM A CROSS JOIN B; |
Genera il prodotto cartesiano completo delle tabelle. |
4. Simulatore Interattivo: Esecuzione di JOIN
Sperimenta l'incrocio di dati tra tabelle correlate (es. studenti e corsi) tramite diverse strategie di JOIN.