5° Anno TEORIA 3. Un modello logico: il modello relazionale | Page 28

15 . Il modello relazionale Vers . 6.2 – Gennaio 2023

GLI OPERATORI RELAZIONALI

Ora che sappiamo che la nostra base di dati può essere rappresentata con un insieme di relazioni concentriamo la nostra attenzione sulle operazioni che consentono di interrogare una base dati relazionale appena creata .
Nel tempo sono stati proposti diversi linguaggi per l ’ interrogazione di una base di dati relazionali quasi tutti di tipo non procedurale . Tali linguaggi di interrogazione utilizzano uno dei due seguenti approcci :
a ) approccio basato sull ’ algebra relazionale In questo approccio il risultato di una interrogazione o query è una relazione . Per ottenere tale relazione si formula una interrogazione utilizzando alcuni operatori di algebra relazionale ( ad esempio operatori di unione , intersezione e differenza tra relazioni in senso insiemistico ) che vengono composti tra loro ed applicati alle relazioni della base dati ;
b ) approccio basato sul calcolo relazionale : Anche in questo approccio il risultato di una interrogazione o query è una relazione . Per ottenere tale relazione si formula una interrogazione utilizzando il calcolo dei predicati del primo ordine sulle relazioni della base dati .
I due approcci possono considerarsi equivalenti sia dal punto di vista espressivo ( ossia la relazione ottenuta utilizzando l ’ approccio dell ’ algebra relazionale può essere espressa con un equivalente predicato del primo ordine ), sia dal punto di vista implementativo . ( ossia non vi è alcuna differenza tra i due approcci riguardo alla velocità di scrittura dell ’ interrogazione ).
Scegliamo di utilizzare l ’ approccio dell ’ algebra relazionale vista la maggiore familiarità con gli operatori algebrici rispetto al calcolo dei predicati .

Algebra relazionale

Occorre scegliere innanzitutto un insieme funzionalmente completo di operatori ( ossia un insieme di operatori che ha la caratteristica di essere sufficiente per rappresentare tutte le funzioni ) da utilizzare nelle interrogazioni o query .
DEF : Un insieme funzionalmente completo di operatori è quello formato dai cinque operatori relazionali : - 1 ) unione di due relazioni ; - 2 ) differenza di due relazioni ; - 3 ) prodotto cartesiano di due relazioni ; - 4 ) proiezione di una relazione ; - 5 ) restrizione di una relazione ;
Oltre a questi cinque operatori è opportuno introdurne altri quattro operatori che possono essere ricavati naturalmente dai primi cinque ( funzionalmente completo ) ma il cui utilizzo permette di scrivere formule di interrogazioni più semplici e sintetiche . - 6 ) intersezione di due relazioni ; - 7 ) giunzione ( THETA-JOIN , EQUI-JOIN , NATURAL JOIN ) di due relazioni ; - 8 ) giunzione ( sinistra | destra | completa ) esterna ( LEFT | RIGHT | FULL | OUTER JOIN ) di due relazioni ; - 9 ) auto-giunzione di una relazione ( SELF JOIN ) ( N . B . è un equi join sulla stessa relazione );
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 28