back to top

SQL: creare una query su più tabelle

In questo articolo, esploreremo come creare query su più tabelle in SQL, un’abilità fondamentale per gestire e analizzare i dati in un database relazionale.

Utilizzeremo le istruzioni JOIN e il “metodo tradizionale” per dimostrare come collegare le informazioni provenienti da diverse tabelle del medesimo database.

Pubblicità

Struttura delle Tabelle

Immaginiamo di avere tre tabelle nel nostro database, con i seguenti campi:

  • autori
    • aut_id
    • aut_nome
  • editori
    • edi_id
    • edi_nome
  • libri
    • lib_id
    • lib_autore
    • lib_editore
    • lib_titolo

Le chiavi primarie e le relazioni tra le tabelle sono fondamentali. In particolare, il campo lib_autore della tabella libri deve corrispondere a aut_id della tabella autori, mentre lib_editore deve corrispondere a edi_id della tabella editori.

Query su più tabelle: metodo tradizionale

Il metodo tradizionale per scrivere il codice SQL per ottenere informazioni da più tabelle utilizza la sintassi delle virgole per separare i nomi delle tabelle elencate dopo l’istruzione FROM. Ecco un esempio:

SELECT * FROM autori, editori, libri
WHERE
aut_id = lib_autore
AND
edi_id = lib_editore

Utilizzo dell’Istruzione JOIN

Un approccio più moderno e consigliato per unire tabelle è l’uso delle istruzioni JOIN.

Questo metodo rende la query più leggibile e più facile da gestire. Ecco un esempio di come utilizzare l’istruzione INNER JOIN per ottenere gli stessi risultati:

SELECT * FROM autori
INNER JOIN libri
ON autori.aut_id = libri.lib_autore
INNER JOIN editori
ON libri.lib_editore = editori.edi_id

L’istruzione INNER JOIN restituisce solo le righe che hanno corrispondenze in entrambe le tabelle, il che è ideale per mantenere l’integrità dei dati.

Conclusione

In questo articolo abbiamo esplorato le basi del creare query su più tabelle in SQL utilizzando sia il metodo tradizionale che l’istruzione JOIN.

Saper gestire dati da più fonti è essenziale per sfruttare appieno la potenza dei database relazionali. Ti invitiamo a sperimentare queste tecniche e a esplorare ulteriori opzioni come LEFT JOIN e RIGHT JOIN per ampliare la tua comprensione delle operazioni di join in SQL.

Altri contenuti interessanti

Pubblicità

Potrebbero interessarti queste guide

Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).

Leggi anche...

Come ottenere l’ID dell’ultimo record inserito in MySQL, PostgreSQL, SQL Server e Oracle?

Ottenere l'ID dell'ultimo record inserito in una tabella, dopo...

Database completo regioni, province e comuni italiani (in formato SQL)

Quando si sviluppa un sito web o un'applicazione in...

File CSV: cosa sono, come si aprono e come crearli

In questo articolo cercheremo di capire cos'è il formato...

Confrontare due tabelle e trovare i record senza corrispondenza

all'interno di un database relazionale può essere utile poter...

Eseguire comandi SQL online con SQL Fiddle

Sì. E' possibile testare codice SQL senza aver installato...

SQL: Calcolare la media dei valori di più campi

Attraverso una semplice query SQL è possibile calcolare dinamicamente...
Pubblicità