Realizzazione di Siti con Programmatore PHP e Realizzazione di Database MySQL per applicazioni dimamiche e siti internet. Guida alle Join di MySQL e al loro utilizzo con Script PHP o linguaggi dinamici.
Guida alle Join di MySQL
Scritto da: Daniele Tabacco | Categoria: Programmatore MySQL|commenti Commenti: (0)

Un Programmatore PHP, per lo più innamorato dei database non poteva esimersi dallo scrivere una brevissima guida alle JOIN di MySQL. Le join sono costrutti tipici del linguaggio SQL che permettono l'incrocio di dati prevenienti da più tabelle.

In MySQL esistono 3 tipologie di Join: La CROSS JOIN, l'INNER JOIN e la OUTER JOIN e nel seguente articolo passeremo alla descrizione e alle differenze che esistono tra queste.

Supponiamo di avere le 2 seguenti tabelle che utilizzeremo negli esempi:
Dipendenti
id   nomeCognome   settore
-------------------------------
1    Mario Rossi   Contabilità
2    Marco Bianchi Contabilità
3    Mario Rossi   Marketing
4    Paolo Verdi   Marketing
5    Michele Neri  Tirocinio

Stipendi
id idDipendente stipendioMensile
--------------------------------
1        3            1400
2        2            1250
3        1            1200
4        4            1400

Cross Join
La CROSS JOIN è sicuramente la più semplice tipologia di join ma anche la meno utilizzabile in casi pratici dai programmatori poichè si limita ad un prodotto cartesiano tra le tabelle. Il risultato di questa join sarà dunque sarà una combinazione riga per riga (prodotto cartesiano) delle righe della tabella A sulla tabella B.

Esempio: SELECT * FROM Dipendenti JOIN Stipendi

Inner Join
La INNER JOIN è sicuramente la tipologia che ho utilizzato di più, essa permette di fare una selezione di dati tra più tabelle utilizzando la corrispondenza di un valore, e quindi come sintassi e molto simile alla precedente. Nel nostro caso ad esempio l'id della tabella dipendente deve corrispondere all'idDipendenti presente nella tabella stipendi, confrontandoli utilizzando il valore ON

Esempio: SELECT Dipendenti.nomeCognome, Stipendi.stipendioMensile FROM Dipendenti INNER JOIN Stipendi ON Dipendenti.id = Stipendi.idDipendenti

La INNER JOIN visualizzerà solo i dati che hanno una corrispondenza, inoltre nelle attuali versioni di MySQL non è più necessario specificare esplicitamente INNER, tale tipologia di join viene riconosciuta da JOIN seguito da una condizione ON di corrispondenza tra le tabelle.

Outer Join
Se con la INNER JOIN seleziono tutti i valori corrispondenti tra le tabelle, nella OUTER JOIN avremo come risultato anche quelli che non hanno una corrispondenza. La OUTER JOIN ha come parametri da aggiungere RIGHT e LEFT che ne determinano l'ordinamento. Con LEFT JOIN visualizzeremo le righe presenti nella tabella A non corrispondenti nella B e viceversa nel caso della RIGHT, ovviamente come nel caso precedente la dicitura OUTER potrà essere eliminata semplificando la JOIN che viene riconosciuta dai parametri RIGHT o LEFT.

Esempio: SELECT Dipendenti.nomeCognome, Stipendi.stipendioMensile FROM Dipendenti LEFT OUTER JOIN Stipendi ON Dipendenti.id = Stipendi.idDipendenti

Commenti:
.Nessun commento Presente.


(non visibile)







Captcha
Copia i caratteri che vedi sopra:

Tags: | torna su


Social Link:
linkedIn


Contattami su Skype:
Il mio stato


Realizzazione Siti Mobile e WebApps iPhone:

Vuoi Sviluppare l'Applicazione Mobile (WebApps) del tuo sito o della tua attività? un Applicazione Web, o pianificare la Realizzazione Sito Mobile? Contattami e scegli un Programmatore di WebApps Mobile e Programmatore di Siti Internet Mobile! Sviluppo WebApps per iPhone e Android

Collaborazioni:

Kuddle Network

antoniomaresca

cocreando

Scambio Link

Parlano di Me:

twago

Archivio Ultimi Articoli:

Risorse utili per un Programmatore PHP:
Sito Ufficiale del PHP , Download di PHP , Manuale e Documentazione PHP , Risorse e Siti Utili.

Cerchi un Programmatore PHP con esperienza consolidata? Molte aziende a Napoli, Milano, Roma e Ferrara si sono affidate a me. Contattami per una Consulenza Gratuita, per Realizzare un Applicazione Web o Sviluppare Siti Internet, Creare Portali Dinamici, o come Programmatore iPhone, Realizzazione Siti Mobile
 
Daniele Tabacco - Questo sito e' interamente realizzato da me secondo gli standard del W3C - css valido w3c css valido xhtml