Join (SQL): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Cross join: Aggiunto un'immagine che rappresenta la CROSS JOIN di due tabelle con la relativa didascalia
Funzionalità collegamenti suggeriti: 2 collegamenti inseriti.
 
(8 versioni intermedie di 2 utenti non mostrate)
Riga 1:
{{torna a|Structured Query Language}}
{{F|programmazione|giugno 2018}}
 
Riga 40 ⟶ 39:
 
{{clear}}
<code>Dipartimenti.ID_dipartimento</code> è la [[chiave primaria]] che ha una [[cardinalità]] 0:n nei confronti del campo <code>Impiegati.ID_dipartimento</code>.
 
Nota: Il dipartimento <code>Promozione</code> della tabella <code>Dipartimenti</code> non ha alcuna corrispondenza nella tabella <code>Impiegati</code>. Mentre l'impiegato <code>Grassi</code> non è stato assegnato ad alcun dipartimento ([[NULL]]).
Riga 105 ⟶ 104:
</syntaxhighlight>
 
La ''keyword'' {{Codice|codice=USING|linguaggio=SQL}} è supportata da [[Microsoft SQL Server Management Studio]], [[MySQL]], [[Oracle Database|Oracle]], [[PostgreSQL]], [[SQLite]], e [[IBM DB2|DB2/400]].
 
=== Natural join ===
Riga 205 ⟶ 204:
| Grassi || {{Codice|codice=NULL|linguaggio=SQL}}|| Promozione || 35
|}
 
 
== Outer join ==
Riga 216 ⟶ 214:
 
=== Left outer join ===
[[File:SQL Join - 01b A Left Join B.svg|miniatura|[[Diagramma di Venn]] che rappresenta la {{Codice|codice=LEFT OUTER JOIN|linguaggio=SQL}} di due tabelle]]
Il risultato di una query {{Codice|codice=LEFT OUTER JOIN|linguaggio=SQL}} (o semplicemente {{Codice|codice=LEFT JOIN|linguaggio=SQL}}) per le tabelle <math>A</math> e <math>B</math> contiene sempre tutti i record della tabella di sinistra (''left'') <math>A</math>, mentre vengono estratti dalla tabella di destra (''right'') <math>B</math> solamente le righe che trovano corrispondenza nella regola di confronto della join. Questo significa che se la clausola {{Codice|codice=ON|linguaggio=SQL}} trova zero righe in <math>B</math>, la {{Codice|codice=JOIN|linguaggio=SQL}} mostrerà una riga risultante con valore {{Codice|codice=NULL|linguaggio=SQL}} in tutte le colonne corrispondenti al risultato per le colonne di <math>B</math>.
 
Riga 243 ⟶ 242:
 
=== Right outer join ===
[[File:SQL Join - 03b A Right Join B.svg|miniatura|[[Diagramma di Venn]] che rappresenta la {{Codice|codice=RIGHT OUTER JOIN|linguaggio=SQL}} di due tabelle]]
Una {{Codice|codice=RIGHT OUTER JOIN|linguaggio=SQL}} (o {{Codice|codice=RIGHT JOIN|linguaggio=SQL}}) semplicemente ricalca il funzionamento della {{Codice|codice=LEFT OUTER JOIN|linguaggio=SQL}}, ma invertendo l'ordine delle tabelle interessate.
 
Riga 282:
 
=== Full outer join ===
[[File:SQL Join - 05b A Full Join B.svg|miniatura|[[Diagramma di Venn]] che rappresenta la {{Codice|codice=FULL OUTER JOIN|linguaggio=SQL}} di due tabelle]]
Una {{Codice|codice=FULL OUTER JOIN|linguaggio=SQL}} combina i risultati delle due tabelle <math>A</math> e <math>B</math> tenendo conto di tutte le righe delle tabelle, anche di quelle che non hanno corrispondenza tra di loro.
 
Riga 351 ⟶ 352:
* [[Sort merge join]]
* [[SQL]]
 
== Altri progetti ==
{{interprogetto|preposizione=sulla}}
 
== Collegamenti esterni ==