Operatore Operatore INTESECT Operatore EXCET Linguaggio SQL: fondamenti Operatore Operatore insiemistico di unione A B Esegue l unione delle due espressioni relazionali A e B le espressioni relazionali A e B possono essere generate da istruzioni SELECT richiede la compatibilità di schema tra A e B rimozione dei duplicati rimuove i duplicati ALL non rimuove i duplicati Nome Colore Taglia Maglia osso 40 2 Jeans Verde 48 3 Camicia Blu 48 oma 4 Camicia Blu 44 5 Gonna Blu 40 6 Bermuda osso 42 Cod Qta 1 300 1 2 200 1 3 400 1 4 200 1 5 100 1 6 100 2 300 2 2 400 3 2 200 4 3 200 4 4 300 4 5 400 2007 olitecnico di 1
Nome Colore Taglia Maglia osso 40 2 Jeans Verde 48 3 Camicia Blu 48 oma 4 Camicia Blu 44 5 Gonna Blu 40 6 Bermuda osso 42 6 WHEE Cod='2' Cod Qta 1 300 1 2 200 1 3 400 1 4 200 1 5 100 1 6 100 2 300 2 2 400 3 2 200 4 3 200 4 4 300 4 5 400 WHEE Cod='2' 2 6 2 2 6 2007 olitecnico di 2
imozione del duplicato 2 6 Compatibilità di schema ALL: esempio ALL: esempio ALL ALL 6 2 2 6 Operatore INTESECT Operatore insiemistico di intersezione A INTESECT B Esegue l intersezione delle due espressioni relazionali A e B le espressioni relazionali A e B possono essere generate da istruzioni SELECT richiede la compatibilità di schema tra A e B 2007 olitecnico di 3
Nome Colore Taglia Maglia osso 40 2 Jeans Verde 48 3 Camicia Blu 48 oma 4 Camicia Blu 44 5 Gonna Blu 40 6 Bermuda osso 42 Cod Nome NSoci 1 Andrea 2 2 Luca 1 3 Antonio 3 4 Gabriele 2 5 Matteo 3 Cod Nome NSoci 1 Andrea 2 2 Luca 1 3 Antonio 3 4 Gabriele 2 5 Matteo 3 Nome Colore Taglia Maglia osso 40 2 Jeans Verde 48 3 Camicia Blu 48 oma 4 Camicia Blu 44 5 Gonna Blu 40 6 Bermuda osso 42 oma INTESECT ; INTESECT ; oma Equivalenza con altri operatori L operazione di intersezione può essere eseguita anche mediante il join l operatore IN 2007 olitecnico di 4
Equivalenza con il join La clausola OM contiene le relazioni interessate dall intersezione La clausola WHEE contiene condizioni di join tra gli attributi presenti nella clausola SELECT delle espressioni relazionali A e B Equivalenza con il join: esempio Equivalenza con il join: esempio,... Equivalenza con il join: esempio, WHEE.=.; Equivalenza con l operatore IN Una delle due espressioni relazionali diviene un interrogazione nidificata mediante l operatore IN Gli attributi nella clausola SELECT esterna, uniti da un costruttore di tupla, costituiscono la parte sinistra dell operatore IN Equivalenza con IN: esempio 2007 olitecnico di 5
Equivalenza con IN: esempio WHEE IN ( ); Operatore insiemistico di differenza A EXCET B Operatore EXCET Sottrae l espressione relazionale B all espressione relazionale A richiede la compatibilità di schema tra A e B EXCET: esempio Nome Colore Taglia Maglia osso 40 2 Jeans Verde 48 3 Camicia Blu 48 oma 4 Camicia Blu 44 5 Gonna Blu 40 6 Bermuda osso 42 Cod Nome NSoci 1 Andrea 2 2 Luca 1 3 Antonio 3 4 Gabriele 2 5 Matteo 3 EXCET: esempio EXCET: esempio Cod Nome NSoci 1 Andrea 2 2 Luca 1 3 Antonio 3 4 Gabriele 2 5 Matteo 3 Nome Colore Taglia Maglia osso 40 2 Jeans Verde 48 3 Camicia Blu 48 oma 4 Camicia Blu 44 5 Gonna Blu 40 6 Bermuda osso 42 oma 2007 olitecnico di 6
EXCET: esempio EXCET: esempio EXCET ; EXCET ; oma Equivalenza con l operatore NOT IN Equivalenza con l operatore NOT IN: esempio L operazione di differenza può essere eseguita anche mediante l operatore NOT IN l espressione relazionale B è nidificata all interno dell operatore NOT IN gli attributi nella clausola SELECT dell espressione relazionale A, uniti da un costruttore di tupla, costituiscono la parte sinistra dell operatore NOT IN Equivalenza con l operatore NOT IN: esempio WHEE NOT IN ( ); 2007 olitecnico di 7