Linguaggio SQL: Principali operatori insiemistici

Linguaggio SQL: Principali operatori insiemistici

Il codice SQL è regolato da una sintassi chiara e ben definita. Per poter eseguire delle query, essa richiede che tutte le specifiche necessarie all’esecuzione del comando vengano rispettate.
Come abbiamo detto, una query può essere composta da più o meno clausole a seconda delle necessità, ma tutte devono seguire rigidi vincoli costruttivi, pena l’esecuzione errata della richiesta.

Linguaggio SQL - Principali operatori insiemistici

In alcune occasioni però l’utente può voler utilizzare dei risultati derivanti dal confronto o dall’unione di più tabelle: questo richiede l’utilizzo di due query diverse e l’utilizzo di un operatore che le colleghi tra loro, specificando la funzione da applicare. Tale insieme di operatori vengono detti insiemistici.
Questi operatori sono di facile implementazione, e sebbene richiedano la scrittura di due query il risultato finale è di grande interesse; l’unico importante requisito affinchè il risultato sia corretto è che i dati che si richiede vengano confrontati siano tra loro compatibili. La struttura globale per questi operatori è mostrata in figura seguente.

Questi operatori vanno inseriti al livello esterno del codice,ovvero alla fine della prima query e prima dell’inizio della seconda e, a seconda del tipo di operatore, si possono avere i seguenti risultati:

  1. UNION: calcola il risultato dell’unione di due tabelle, eliminando eventuali risultati duplicati;
  2. EXCEPT o MINUS: calcola il risultato dell’unione di due tabelle evidenziando i valori che rispettano i vincoli esclusivi della prima query e non della seconda;
  3. INTERSECT: calcola il risultato dell’unione di due tabelle evidenziando i valori che rispettano i vincoli esclusivi di entrambe le query interrogative.

Tutti questi operatori non tengono conto di risultati duplicati, e per questo li eliminano; volendo, è possibile conservare i risultati duplicati aggiungendo al termine degli operatori sopra citati la parola chiave ALL.

Struttura di query con operatori insiemistici
Struttura di query con operatori insiemistici

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *