| Istruzioni per l'interrogazione dei dati (Select) |
| Istruzioni DML (Data Manipulation Language) |
| Istruzioni CTL (Control Transaction Language) |
| Istruzioni DCL (Data Control Language) |
| Istruzioni DDL (Data Definition Language) |
La sintassi del comando è la seguente:
Un'altra istruzione potente che usa il comando Select è rappresentata dalle SUBQUERY o Query Innestate
Una subquery è un'istruzione select annidata all'interno di un'altra istruzione generalmente usata per finalità di comparazione tra dati. Le subquery devono restituire sempre un unico valore se sono impiegate con l'operatore "=" altrimenti possono restituire più valori se usati con l'operatore "IN":
SELECT nome_colonna1, nome_colonna2
FROM nome_tabella WHERE nome_colonna1 = (SELECT nome_colonna1 FROM nome_altra_tabella WHERE condizione)
| OPERATORE | DESCRIZIONE |
| (+) e (-) | operatori unari che indicano il segno algebrico di un numero |
| (*), (/), (+), (-) | operatori binari di moltiplicazione e divisione |
| (||) | operatore binario di concatenazione di stringhe |
| NOT, AND, OR | operatori logici |
| (=) | operatore di uguaglianza |
| (!=), (^=),(<>) | operatori di disuguaglianza |
| (>),(>=),(<),(<=) | operatori di confronto |
| IN, (=ANY), (=SOME) | operatore di appartenenza ad una lista |
| NOT IN, (!=ALL) | operatore di non appartenenza |
| ANY, SOME | operatori di confronto con almeno un valore di una lista (devono essere preceduti da un operatore di uguaglianza, disuguaglianza o confronto) |
| ALL | operatore di confronto con tutti i valori di una lista (deve essere preceduto da un operatore di uguaglianza, disuguaglianza o confronto) |
| [NOT] BETWEEN x AND y | [Non] maggiore di o uguale a x e minore di o uguale a y |
| EXISTS | TRUE se la subquery restituisce almeno una riga |
| x [NOT] LIKE y [ESCAPE ‘z’] | TRUE se la stringa x contiene la stringa y. All’interno di y il carattere speciale ‘%’ indica una stringa di zero o più caratteri mentre il carattere speciale ‘_’ indica un qualsiasi carattere. I caratteri speciali ‘%’ e ‘_’ preceduti dal carattere che segue la clausola ESCAPE perdono la loro peculiarità per riassumere il loro valore letterale. |
| IS [NOT] NULL | Verifica se un valore è nullo. Il valore NULL è indefinito e come tale non è uguale a nessun altro valore, neanche a un altro NULL. |
| UNION | unisce i risultati di due SELECT e scarta le righe duplicate |
| UNION ALL | unisce i risultati di due SELECT lasciando i duplicati |
| INTERSECT | mostra solo le righe comuni alle due SELECT scartando i duplicati |
| MINUS | restituisce tutte le righe distinte della prima select che non appartengono all’insieme |
| TIPO DI DATO | DESCRIZIONE |
| char(dim) | carattere, dimensione max 2000 bytes |
| varchar2(dim) | carattere di lunghezza variabile fino a 4000 bytes |
| number | (precisione, scala) numerico |
| long | carattere fino a 2 gigabytes |
| long raw | binario fino a 2 gigabytes |
| raw(dim) | binario, dimensione max 2000 bytes |
| date | data, dal 1/1/4712 B.C al 12/31/4712 A.C |
| blob | binario fino a 4 gigabytes |
| clob | carattere fino a 4 gigabytes |
| bfile | puntatore |
| rowid | interno |
| COMANDO | DESCRIZIONE |
| INSERT | inserisce nuovi record in una tabella |
| UPDATE | modifica i records esistenti in una tabella |
| DELETE | cancella i records esistenti in una tabella |