Capitolo 5. Query su più tabelle
Questo lavoro è stato tradotto utilizzando l'AI. Siamo lieti di ricevere il tuo feedback e i tuoi commenti: translation-feedback@oreilly.com
Nel Capitolo 2 ho dimostrato come i concetti correlati vengano suddivisi in parti separate attraverso un processo noto come normalizzazione. Il risultato finale di questo esercizio è costituito da due tabelle: person e favorite_food. Se però vuoi generare un unico report che mostri il nome, l'indirizzo e i cibi preferiti di una persona, avrai bisogno di un meccanismo per riunire i dati di queste due tabelle; questo meccanismo è noto come join e questo capitolo si concentra sul join più semplice e comune, il join interno. Il capitolo 10 illustra tutti i diversi tipi di join.
Che cos'è una join?
Le query su una singola tabella non sono certo rare, ma scoprirai che la maggior parte delle tue query richiederà due, tre o anche più tabelle. Per illustrare la situazione, vediamo le definizioni delle tabelle customer e address e definiamo una query che recuperi i dati da entrambe le tabelle:
mysql> desc customer; +-------------+----------------------+------+-----+-------------------+ | Field | Type | Null | Key | Default | +-------------+----------------------+------+-----+-------------------+ | customer_id | smallint(5) unsigned | NO | PRI | NULL | | store_id | tinyint(3) unsigned | NO | MUL | NULL | | first_name | varchar(45) | NO | ...