Operatori aritmetici
* moltiplicazione
/ divisione
+ addizione
- sottrazione
Operatori logici
NOT capovolge il risultato logico dell’ espressione
AND combina due o piu’ espressioni logiche:
TRUE se sono tutte TRUE; altrimenti FALSE
OR combina due o piu’ espressioni logiche:
TRUE se qualcuna e’ TRUE; altrimenti FALSE
Operatori di confronto
= uguale a
!= , <> diverso da
> maggiore
>= maggiore o uguale
< minore
<= minore o uguale
IN uguale ad almeno un valore di un set o di una subquery
NOT IN diverso da ogni valore di un set o di una subquery
BETWEEN x AND y maggiore o uguale a x e minore o uguale a y
EXISTS TRUE se la subquery restituisce almeno una riga
LIKE trova una corrispondenza tra stringhe; ‘%’ corrisponde a qualsiasi
sequenza di caratteri, ‘_’ corrisponde a qualsiasi carattere singolo
IS NULL valore nullo
[ad code=2 align=left]
Operatori insiemistici
UNION restituisce tutte le righe della prima query + tutte le righe della seconda, evitando le righe duplicate
UNION ALL restituisce tutte le righe della prima query + tutte le righe della seconda, comprese le righe duplicate
INTERSECT restituisce solo le righe di intersezione tra due query, evitando le righe duplicate
MINUS restituisce tutte le righe della prima query che non sono anche nella seconda, evitando le righe duplicate
Altri operatori
Operatore Funzione
* indica tutte le colonne di una tabella o di una vista
(+) indica una colonna in outer join
PRIOR indica una relazione padre-figlio tra nodi di una query strutturata ad albero
DISTINCT elimina le righe duplicate dal risultato di una query
ALL mantiene le righe duplicate nel risultato di una query (e’ il default)
Funzioni
Funzioni numeriche
ABS(n) valore assoluto di n
ROUND(n[,m]) n arrotondato a m cifre decimali; m=0 di default; m puo’ essere negativo
TRUNC(n[,m]) n troncato a m cifre decimali; m=0 di default; m puo’ essere negativo
SIGN(n) 1 se n e’ positivo; 0 se n e’ 0; -1 se n e’ negativo
CEIL(n) il piu’ piccolo intero maggiore o uguale a n
FLOOR(n) il piu’ grande intero minore o uguale a n
MOD(n,m) il resto della divisione di n per m
POWER(n,m) n elevato alla m
SQRT(n) radice quadrata di n
Funzioni di stringa
Funzione Valore restituito
SUBSTR(char,m[,n]) una sottostringa di char, che inizia al carattere m, lunga n byte (se n manca, lunga fino alla fine della stringa char)
LENGTH(char) lunghezza della stringa char in byte
CHR(n) carattere con valore ASCII n
ASCII(char) valore ASCII del primo carattere della stringa char
UPPER(char) stringa char con tutte le lettere maiuscole
LOWER(char) stringa char con tutte le lettere minuscole
INITCAP(char) stringa char con l’ iniziale di ogni parola maiuscola
REPLACE(char,string1[,string2])
char con ogni occorrenza di string1 sostituita da string2 (se manca string2, string1 viene cancellata)
TRANSLATE(char,from,to) char con ogni carattere presente in from sostituito col corrispondente carattere di to
RPAD(char1,n[,char2]) char1, riempito a destra di char2 fino alla lunghezza n (il default di char2 e’ un blank)
LPAD(char1,n[,char2]) char1, riempito a sinistra di char2 fino alla lunghezza n (il default di char2 e’ un blank)
RTRIM(char[,set]) char, con i caratteri finali cancellati dopo l’ ultimo carattere non in set (il default di set e’ un blank)
LTRIM(char[,set]) char, con i caratteri iniziali cancellati prima del primo carattere non in set (il default di set e’ un blank)
Funzioni di gruppo
AVG(n) valore medio di n, ignorando i valori nulli
COUNT(*) numero di righe estratte dalla query
COUNT([DISTINCT]expr) numero di righe estratte dalla query
MAX(expr) valore massimo di expr
MIN(expr) valore minimo di expr
SUM(n) somma dei valori di n
Funzioni sulle date
SYSDATE data e ora corrente di sistema
ADD_MONTHS(d,n) data d + n mesi
LAST_DAY(d) data dell’ ultimo giorno del mese contenente d
MONTHS_BETWEEN(d1,d2)
numero di mesi compresi tra d1 e d2
NEXT_DAY(d,char) data del primo giorno della settimana identificato da char
uguale o maggiore di d
ROUND(d[,fmt]) data d arrotondata come specificato dal formato fmt
TRUNC(d[,fmt]) data d troncata come specificato dal formato fmt
Funzioni di conversione
TO_CHAR(expr[,fmt]) expr, convertito da NUMBER o DATE a CHAR nel formato specificato da fmt
TO_DATE(char[,fmt]) char, convertito da CHAR nel formato fmt a DATE
TO_NUMBER(char[,fmt]) char, che deve essere una stringa contenente un numero nel formato opzionale fmt, convertito in NUMBER
Altre funzioni
Funzione Valore restituito
DECODE(expr,search1,return1, [search1,return1,]…[default])
se expr eguaglia qualche search, restituisce return, altrimenti restituisce default
DUMP(expr) expr nel formato interno di Oracle
GREATEST(expr1[,expr2]…)
expr col valore maggiore
LEAST(expr1[,expr2]…) expr col valore minore
NVL(expr1,expr2) expr2, se expr1 e’ nullo; altrimenti expr1
UID numero identificativo dell’ utente corrente
USER nome dell’ utente corrente
USERENV(‘option’) informazione sulla sessione corrente.
Options: SESSIONID, TERMINAL, ecc
VSIZE(expr) numero di byte occupati dalla rappresentazione interna di expr
Pseudo-colonne
Nome colonna Valore restituito
sequence.CURRVAL valore corrente della sequence valido per la sessione corrente se e’ stato referenziato prima NEXTVAL
sequence.NEXTVAL valore incrementale della sequence nella sessione corrente
[table.]LEVEL 1 per il nodo radice, 2 per un figlio di radice, ecc; usato nelle query strutturate ad albero
[table.]ROWID identificativo di una riga di una tabella del database (contiene il block_id, il row_id e il file_id)
ROWNUM posizione di ogni riga estratta da una query
Pseudo-tabelle
Nome tabella Valore restituito
DUAL pseudo-tabella presente in ogni database Oracle, accessibile a tutti gli utenti, che contiene 1 colonna di 1 carattere e 1 riga; permette di eseguire ‘false’ SELECT allo scopo di eseguire calcoli, visualizzare la data, incrementare una sequence di 1 unita’
[ad code=2 align=left]
[ad code=6 align=left]
Articoli che potrebbero interessarti:
- Tipi di dati ORACLE Tipi di dati ORACLE Le tabelle sono oggetti logici che consentono la memorizzazione di dati...
- DML – Data Manipulation Language DDL – Data Definition Language I comandi facenti parte del DDL permettono di creare, modificare...
- DDL – Data Definition Language DDL – Data Definition Language I comandi facenti parte del DDL permettono di creare, modificare...
- Alcuni semplici esempi di statement SQL Creazione di una tabella create table anagrafica( numero_fax char(12)); cod_anagrafica decimal(5) NOT NULL, cognome char(18),...
- Join – Combinazione di tabelle Il vocabolo join significa unione e nel caso di SQL sta ad indicare unione tra...
- Uniform Resource Locator o più semplicemtente URL L’URL è l’acronimo di Uniform Resource Locator. E’ quella stringa che usiamo per identificare l’indirizzo...

