Questo articolo fornisce un elenco di operatori SQL e può quindi essere utilizzato come cheat sheet per gli operatori SQL.
Non tutti questi operatori sono supportati in tutti i DBMS. In caso di dubbio, controlla la documentazione per il tuo DBMS specifico.
Operatori aritmetici SQL
Operatore | Descrizione |
+ | Operatore di addizione. Somma due numeri. Questo operatore può anche aggiungere un numero, in giorni, da una data (può dipendere dal tuo DBMS). |
- | Operatore di sottrazione. Sottrae due numeri. Questo operatore può anche sottrarre un numero, in giorni, da una data (può dipendere dal tuo DBMS). |
* | Operatore di moltiplicazione. Moltiplica due espressioni. |
/ | Operatore di divisione. Divide un numero per un altro. |
% | Operatore modulo. Restituisce il resto di un numero diviso per un altro. |
Operatori SQL Bitwise
Operatore | Descrizione |
& | Operatore AND bit a bit. Esegue un'operazione AND logica bit per bit tra due valori interi. |
| | Operatore OR bit per bit. Esegue un'operazione OR logico bit per bit tra due valori interi specificati come convertiti in espressioni binarie all'interno di istruzioni SQL. |
# | Operatore OR (XOR) bit a bit. |
^ | Operatore OR esclusivo bit per bit (XOR). Esegue un'operazione OR esclusiva bit per bit tra due valori interi. |
~ | Operatore NOT bit a bit. Esegue un'operazione NOT logica bit per bit su un valore intero. |
<< | Operatore spostamento a sinistra bit a bit. Sposta i bit nell'operando sinistro a sinistra della quantità specificata dall'operando destro. |
>> | Operatore spostamento a destra bit a bit. Sposta i bit nell'operando sinistro a destra della quantità specificata dall'operando destro. |
Operatori di confronto SQL
Operatore | Descrizione |
= | Operatore uguale. Confronta l'uguaglianza di due espressioni. |
> | Operatore maggiore di. Confronta due espressioni e restituisce TRUE se l'operando sinistro ha un valore maggiore dell'operando destro; in caso contrario, il risultato è FALSE. |
< | Operatore Meno di. Confronta due espressioni e restituisce TRUE se l'operando sinistro ha un valore inferiore all'operando destro; in caso contrario, il risultato è FALSE. |
>= | Operatore maggiore o uguale a. Confronta due espressioni e restituisce TRUE se l'operando sinistro ha un valore maggiore o uguale all'operando destro; in caso contrario, restituisce FALSE. |
<= | Operatore minore o uguale a. Confronta due espressioni e restituisce TRUE se l'operando sinistro ha un valore inferiore o uguale all'operando destro; in caso contrario, restituisce FALSE. |
<> | Operatore diverso da. Confronta due espressioni e restituisce TRUE se l'operando sinistro non è uguale all'operando destro; in caso contrario, il risultato è FALSE. |
!< | Operatore non inferiore a. Confronta due espressioni e restituisce TRUE se l'operando sinistro non ha un valore inferiore all'operando destro; in caso contrario, il risultato è FALSE. |
!= | Operatore diverso da. Confronta due espressioni e restituisce TRUE se l'operando sinistro non è uguale all'operando destro; in caso contrario, il risultato è FALSE. |
!> | Operatore non maggiore di. Confronta due espressioni e restituisce TRUE se l'operando di sinistra non ha un valore maggiore dell'operando di destra; in caso contrario, il risultato è FALSE. |
Operatori composti SQL
Operatore | Descrizione |
+= | Aggiungi operatore di assegnazione. Somma due numeri e imposta un valore al risultato dell'operazione. |
-= | Operatore di assegnazione di sottrazione. Sottrae due numeri e imposta un valore al risultato dell'operazione. |
*= | Operatore di assegnazione della moltiplicazione. Moltiplica due numeri e imposta un valore sul risultato dell'operazione. |
/= | Operatore di assegnazione divisione. Divide un numero per un altro e imposta un valore sul risultato dell'operazione. |
%= | Operatore di assegnazione del modulo. Divide un numero per un altro e imposta un valore sul risultato dell'operazione. |
&= | Operatore di assegnazione AND bit per bit. Esegue un'operazione AND logica bit per bit tra due valori interi e imposta un valore sul risultato dell'operazione. |
^= | Operatore di assegnazione OR (XOR) bit a bit. Esegue un'operazione OR esclusiva bit per bit tra due valori interi e imposta un valore sul risultato dell'operazione. |
|= | Operatore di assegnazione OR bit per bit. Esegue un'operazione OR logico bit per bit tra due valori interi specificati come convertiti in espressioni binarie all'interno di istruzioni SQL e imposta un valore sul risultato dell'operazione. |
Operatori logici SQL
Operatore | Descrizione |
ALL | Restituisce TRUE quando tutti i valori della sottoquery soddisfano la condizione. |
AND | Combina due espressioni booleane e restituisce TRUE quando entrambe le espressioni sono TRUE. |
ANY | Restituisce TRUE quando uno qualsiasi dei valori della sottoquery soddisfa la condizione. |
BETWEEN | Specifica un intervallo da testare. Restituisce TRUE quando l'operando rientra nell'intervallo di confronti. |
EXISTS | Specifica una sottoquery per verificare l'esistenza di righe. Restituisce TRUE quando la sottoquery restituisce uno o più record. |
IN | Determina se un valore specificato corrisponde a qualsiasi valore in una sottoquery o in un elenco. Restituisce TRUE quando l'operando è uguale a uno di un elenco di espressioni. |
LIKE | Determina se una stringa di caratteri specifica corrisponde a un modello specificato. Restituisce TRUE quando l'operando corrisponde a un modello. |
NOT | Nega un input booleano (inverte il valore di qualsiasi espressione booleana). Restituisce quindi TRUE quando l'espressione è FALSE. In MariaDB, NOT si limita a negare il IN , BETWEEN e EXISTS clausole. |
OR | Combina due condizioni. Restituisce TRUE quando una delle condizioni è TRUE. |
SOME | Come ANY . Restituisce TRUE quando uno qualsiasi dei valori della sottoquery soddisfa la condizione. |
Operatori di insiemi SQL
Operatore | Descrizione |
EXCEPT | Restituisce righe distinte confrontando i risultati di due query. Restituisce righe distinte dalla query di input di sinistra che non vengono restituite dalla query di input di destra. |
INTERSECT | Restituisce righe distinte confrontando i risultati di due query. Restituisce righe distinte che vengono emesse dall'operatore delle query di input sinistro e destro. |
INTERSECT ALL | Restituisce righe distinte confrontando i risultati di due query. Restituisce righe distinte che vengono emesse dall'operatore delle query di input sinistro e destro. |
UNION | Concatena i risultati di due query in un unico set di risultati, esclusi i duplicati. |
UNION ALL | Concatena i risultati di due query in un unico set di risultati, inclusi i duplicati. |
MINUS | Restituisce righe distinte confrontando i risultati di due query. Restituisce righe distinte dalla query di input di sinistra che non vengono restituite dalla query di input di destra. |
Operatori di stringhe SQL
Operatore | Descrizione |
+ | Operatore di concatenazione di stringhe (SQL Server). La concatenazione di stringhe è l'operazione di unione di stringhe di caratteri end-to-end. |
|| | Operatore di concatenazione di stringhe (DB2, Oracle, PostgreSQL, SQLite). La concatenazione di stringhe è l'operazione di unione di stringhe di caratteri end-to-end. |
+= | Operatore di assegnazione di concatenazione di stringhe. |
% | Percentuale di caratteri jolly da abbinare. Corrisponde a qualsiasi stringa di zero o più caratteri. Questo carattere jolly può essere utilizzato come prefisso o suffisso e può essere utilizzato anche nel mezzo. |
[] | Carattere/i jolly da abbinare. Corrisponde a qualsiasi singolo carattere all'interno dell'intervallo o del set specificato tra parentesi [ ] . Questi caratteri jolly possono essere utilizzati nei confronti di stringhe che implicano la corrispondenza di modelli, ad esempio LIKE . Supportato in SQL Server. Non supportato in MySQL, Oracle, DB2 e SQLite. |
[^] | Carattere/i jolly non da abbinare. Corrisponde a qualsiasi singolo carattere che non rientri nell'intervallo o nel set specificato tra parentesi quadre [^] . Questi caratteri jolly possono essere utilizzati nei confronti di stringhe che implicano la corrispondenza di modelli, ad esempio LIKE . |
_ | Carattere jolly:abbina un carattere. Corrisponde a qualsiasi singolo carattere in un'operazione di confronto di stringhe che prevede la corrispondenza del modello, ad esempio LIKE . Non supportato in DB2. |
Operatori unari SQL
Operatore | Descrizione |
+ | Operatore unario positivo. Il valore numerico è positivo. |
- | Operatore unario negativo. Il valore numerico è negativo. |
~ | Operatore NOT bit a bit. Restituisce il complemento in uno del numero. |
PRIOR | Operatore proprietario Oracle. Valuta l'espressione seguente per la riga padre della riga corrente in una query gerarchica o strutturata ad albero. In una tale query, devi utilizzare questo operatore in CONNECT BY clausola per definire la relazione tra le righe padre e figlio. |
Altri operatori SQL
Operatore | Descrizione |
(+) | Operatore di join esterno (operatore proprietario Oracle). Indica che la colonna precedente è la colonna del join esterno in un join. |
:: | Operatore di risoluzione dell'ambito. Fornisce l'accesso ai membri statici di un tipo di dati composto. Un tipo di dati composto è un tipo che contiene più metodi e tipi di dati semplici. |
Cosa sono gli operatori SQL?
Gli operatori SQL sono simboli che specificano un'azione eseguita su una o più espressioni.
Gli operatori SQL manipolano i singoli elementi di dati e restituiscono un risultato. Gli elementi di dati sono chiamati operandi o argomenti . Gli operatori SQL sono rappresentati da caratteri speciali o da parole chiave.
Ecco un semplice esempio:
SELECT PetId FROM Pets
WHERE PetName = 'Fluffy'
AND DOB > '2020-01-01';
Ci sono tre operatori in questo SQL SELECT
dichiarazione.
- L'operatore Uguale (
=
) confronta l'uguaglianza di due espressioni (il valore di PetName
colonna e la stringa Fluffy
)
- L'operatore Maggiore di (
>
) confronta due espressioni e restituisce TRUE
se l'operando di sinistra ha un valore maggiore dell'operando di destra; in caso contrario, il risultato è FALSE
. In questo caso, sta confrontando il valore del DOB
colonna e la data 2020-01-01
per vedere se quella data è maggiore del valore del DOB
colonna.
- Il
AND
combina due espressioni booleane e restituisce TRUE
quando entrambe le espressioni sono TRUE
. In questo caso, restituisce TRUE
quando PetName = 'Fluffy'
e DOB > '2020-01-01'
.
Gli operatori elencati in questa pagina possono essere utilizzati per costruire query SQL complesse che possono aiutarti a restituire i dati di cui hai bisogno.
Per ulteriori esempi, vedere 12 operatori SQL comunemente utilizzati.