Concetti Chiave
- L'operatore di giunzione combina ennuple di due relazioni in ingresso, creando una nuova relazione basata su attributi comuni.
- La giunzione è applicabile solo quando esiste un legame logico tra le relazioni, rappresentato da chiave primaria e chiave esterna sullo stesso dominio.
- Sotto il profilo insiemistico, la giunzione implica un prodotto cartesiano condizionato, selezionando solo le ennuple che soddisfano una condizione specificata.
- La relazione in uscita ha un grado pari a G1 + G2 - 1 e la cardinalità dipende dal numero di ennuple congiunte che rispettano la condizione.
- Un esempio pratico mostra come ottenere un elenco di studenti con valutazioni attraverso la giunzione delle relazioni Studenti e Valutazioni.
L'operatore algebrico di giunzione (Join) agisce sulle ennuple di due relazioni in ingresso,collegate logicamente tra loro attraverso una coppia di attributi definiti su dominio comune , e favorisce in uscita una nuova relazione costituita dalle ennuple della prima relazione in ingresso congiunte con le ennuple della seconde reazione in ingresso,che soddisfano una condizione specificata.
Condizioni per l'applicazione della giunzione
L'operatore di giunzione può essere applicato solo se tra le due relazioni in ingresso esiste un legame logico dato dalla coppia chiave primaria-chiave esterna,dove entrambe le chiavi sono definite sullo stesso dominio
Dal punto di vista insiemistico,sulle ennuple delle due relazioni in ingresso vine effettuato un prodotto cartesiano condizionato,in quanto le ennuple sono congiunte nel loro prodotto cartesiano per poi selezionare,in questo insieme solo quelle che soddisfano la condizione specificata.
Se indichiamo con G1e G2 i grado delle due relazioni di ingresso,la relazione in uscita sarà di grado uguale a (G1+G2-1),mentre la cardinalità avrà un valore che dipende dal numero di ennuple congiunte che rispettano la condizione specificata.
Esempio pratico di giunzione
Consideriamo,le relazioni
Studenti(Matricola,cognome,nome,classe,specializzazione)
Valutazioni(NumeroValutazioni,Voto,Datavalutazione,tipovalutazione,materia,matricola)
e supponiamo di avere la seguente istanza Studenti(G=5 e C=6) e per Valutazione la seguente(G=6 e C=5)
Volendo ottenere l'elenco dei nominativi degli studenti con le rispettive valutazioni possiamo impostare l'interrogazione per mezzo della seguente giunzione
GIUNZIONE SU Studenti,Valutazioni
DOVE Studenti,Matricola=Valutazione,Matricola.
La relazione risultante ha grado 10 e cardinalità 5 la sua chiave primaria e composta dagli attributi(Matricola +NumeroValutazione)
Domande da interrogazione
- Qual è il principio fondamentale che regola l'operatore di giunzione nelle relazioni?
- Come viene determinato il grado e la cardinalità della relazione risultante dalla giunzione?
- Qual è un esempio pratico di giunzione tra due relazioni?
L'operatore di giunzione può essere applicato solo se esiste un legame logico tra le due relazioni in ingresso, rappresentato da una coppia di chiave primaria e chiave esterna, definite sullo stesso dominio.
Il grado della relazione in uscita è dato dalla formula (G1 + G2 - 1), mentre la cardinalità dipende dal numero di ennuple congiunte che soddisfano la condizione specificata.
Un esempio pratico è la giunzione tra le relazioni Studenti e Valutazioni, dove si ottiene un elenco degli studenti con le rispettive valutazioni utilizzando la condizione Studenti.Matricola = Valutazioni.Matricola, risultando in una relazione di grado 10 e cardinalità 5.