Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Operatori
Gli operatori seguenti possono essere usati nelle clausole SELECT e WHERE.
Operatore AND
Restituisce un risultato Boolean. Esegue un'operazione AND logica. Restituisce true se gli operandi sinistro e destro sono true. In caso contrario, restituisce false. Sono necessari operandi di tipo Boolean o operandi di tipo String "true" o "false" che non facciano distinzione tra maiuscole e minuscole.
Sintassi:
.expression AND
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Boolean |
Boolean |
Boolean. True se entrambi gli operandi sono true. In caso contrario, false. |
String/Boolean |
String/Boolean |
Se tutte le stringhe sono "true" o "false" (senza distinzione tra maiuscole e minuscole), vengono convertite in Boolean ed elaborate normalmente come tipi . |
| Altro valore | Altro valore | Undefined. |
Operatore OR
Restituisce un risultato Boolean. Esegue un'operazione OR logica. Restituisce true se l'operando sinistro o quello destro è true. In caso contrario, restituisce false. Sono necessari operandi di tipo Boolean o operandi di tipo String "true" o "false" che non facciano distinzione tra maiuscole e minuscole.
Sintassi:
.expression OR
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Boolean |
Boolean |
Boolean. True se uno degli operandi è true. In caso contrario, false. |
String/Boolean |
String/Boolean |
Se tutte le stringhe sono "true" o "false" (senza distinzione tra maiuscole e minuscole), vengono convertite in valori booleani ed elaborate normalmente come . |
| Altro valore | Altro valore | Undefined. |
Operatore NOT
Restituisce un risultato Boolean. Esegue un'operazione NOT logica. Restituisce true se l'operando è false. In caso contrario, restituisce true. È necessario un operando di tipo Boolean o un operando di tipo String "true" o "false" senza distinzione tra maiuscole e minuscole.
Sintassi: NOT .expression
| Operando | Output |
|---|---|
Boolean |
Boolean. True se l'operando è false. In caso contrario, true. |
String |
Se la stringa è "true" o "false" (senza distinzione tra maiuscole e minuscole), viene convertita nel valore booleano corrispondente e viene restituito il valore opposto. |
| Altro valore | Undefined. |
Operatore IN
Restituisce un risultato Boolean. È possibile utilizzare l'operatore IN in una clausola WHERE per verificare se un valore corrisponde a qualsiasi valore in un array. Restituisce true se viene trovata la corrispondenza e false in caso contrario.
Sintassi:
.expression IN
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int/Decimal/String/Array/Object |
Array |
Vero se l'Objectelemento Integer DecimalString/Array///viene trovato nell'array. In caso contrario, false. |
Esempio:
SQL: "select * from 'a/b' where 3 in arr" JSON: {"arr":[1, 2, 3, "three", 5.7, null]}
In questo esempio, la clausola condition where 3 in arr restituirà true perché 3 è presente nell'array denominatoarr. Quindi, nell'istruzione SQL, select * from 'a/b' verrà eseguito. Questo esempio mostra anche che l'array può essere eterogeneo.
Operatore EXISTS
Restituisce un risultato Boolean. È possibile utilizzare l'operatore EXISTS in una clausola condizionale per verificare l'esistenza di elementi in una sottoquery. Restituisce true se la sottoquery restituisce uno o più elementi e false se la sottoquery non restituisce alcun elemento.
Sintassi:
.expression
Esempio:
SQL: "select * from 'a/b' where exists (select * from arr as a where a = 3)" JSON: {"arr":[1, 2, 3]}
In questo esempio, la clausola condition where exists (select * from arr as a
where a = 3) restituirà true perché 3 è presente nell'array denominato. arr Quindi, nell'istruzione SQL, select * from 'a/b' verrà eseguito.
Esempio:
SQL: select * from 'a/b' where exists (select * from e as e where foo = 2) JSON: {"foo":4,"bar":5,"e":[{"foo":1},{"foo":2}]}
In questo esempio, la clausola condition where exists (select * from e as e
where foo = 2) verrà valutata vera perché l'array all'einterno dell'oggetto JSON contiene l'oggetto. {"foo":2} Quindi, nell'istruzione SQL, select * from 'a/b' verrà eseguito.
Operatore >
Restituisce un risultato Boolean. Restituisce true se l'operando sinistro è maggiore dell'operando destro. Entrambi gli operandi vengono convertiti in un tipo Decimal e quindi confrontati.
Sintassi: .expression >
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. True se l'operando sinistro è maggiore dell'operando destro. In caso contrario, false. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in Decimal, restituisce un valore Boolean. Restituisce true se l'operando sinistro è maggiore dell'operando destro. In caso contrario, false. |
| Altro valore | Undefined. |
Undefined. |
Operatore >=
Restituisce un risultato Boolean. Restituisce true se l'operando sinistro è maggiore o uguale all'operando destro. Entrambi gli operandi vengono convertiti in un tipo Decimal e quindi confrontati.
Sintassi: .expression >=
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. True se l'operando sinistro è maggiore o uguale all'operando destro. In caso contrario, false. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in Decimal, restituisce un valore Boolean. Restituisce true se l'operando sinistro è maggiore o uguale all'operando destro. In caso contrario, false. |
| Altro valore | Undefined. |
Undefined. |
Operatore <
Restituisce un risultato Boolean. Restituisce true se l'operando sinistro è minore dell'operando destro. Entrambi gli operandi vengono convertiti in un tipo Decimal e quindi confrontati.
Sintassi: .expression <
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. True se l'operando sinistro è minore dell'operando destro. In caso contrario, false. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in Decimal, restituisce un valore Boolean. Restituisce true se l'operando sinistro è minore dell'operando destro. In caso contrario, false. |
| Altro valore | Undefined |
Undefined |
Operatore <=
Restituisce un risultato Boolean. Restituisce true se l'operando sinistro è minore o uguale all'operando destro. Entrambi gli operandi vengono convertiti in un tipo Decimal e quindi confrontati.
Sintassi: .expression <=
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. True se l'operando sinistro è minore o uguale all'operando destro. In caso contrario, false. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in Decimal, restituisce un valore Boolean. Restituisce true se l'operando sinistro è minore o uguale all'operando destro. In caso contrario, false. |
| Altro valore | Undefined |
Undefined |
Operatore <>
Restituisce un risultato Boolean. Restituisce true se gli operandi sinistro e destro non sono uguali. In caso contrario, restituisce false.
Sintassi:
.expression <>
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int |
Int |
True se l'operando sinistro non è uguale all'operando destro. In caso contrario, false. |
Decimal |
Decimal |
True se l'operando sinistro non è uguale all'operando destro. In caso contrario, false. Int viene convertito in Decimal prima di essere confrontato. |
String |
String |
True se l'operando sinistro non è uguale all'operando destro. In caso contrario, false. |
| Array | Array | True se gli elementi di ogni operando non sono uguali e non sono nello stesso ordine. In caso contrario, false |
| Oggetto | Oggetto | True se le chiavi e i valori di ogni operando non sono uguali. In caso contrario, false. L'ordine di non keys/values è importante. |
| Null | Null | Falso. |
| Qualsiasi valore | Undefined |
Undefined. |
Undefined |
Qualsiasi valore | Undefined. |
| Tipo non corrispondente | Tipo non corrispondente | True. |
Operatore =
Restituisce un risultato Boolean. Restituisce true se gli operandi sinistro e destro sono uguali. In caso contrario, restituisce false.
Sintassi:
.expression =
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int |
Int |
True se l'operando sinistro è uguale all'operando destro. In caso contrario, false. |
Decimal |
Decimal |
True se l'operando sinistro è uguale all'operando destro. In caso contrario, false. Int viene convertito in Decimal prima di essere confrontato. |
String |
String |
True se l'operando sinistro è uguale all'operando destro. In caso contrario, false. |
| Array | Array | True se gli elementi di ogni operando sono uguali e sono nello stesso ordine. In caso contrario, false. |
| Oggetto | Oggetto | True se le chiavi e i valori di ogni operando sono uguali. In caso contrario, false. L'ordine di non keys/values è importante. |
| Qualsiasi valore | Undefined |
Undefined. |
Undefined |
Qualsiasi valore | Undefined. |
| Tipo non corrispondente | Tipo non corrispondente | Falso. |
Operatore +
L'operatore "+" è un operatore di overload. Può essere usato per la concatenazione di stringhe o la somma.
Sintassi:
.expression +
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
String |
Qualsiasi valore | Converte l'operando destro in una stringa e lo concatena alla fine dell'operando sinistro. |
| Qualsiasi valore | String |
Converte l'operando sinistro in una stringa e lo concatena all'operando destro alla fine dell'operando sinistro convertito. |
Int |
Int |
Int value. Somma gli operandi. |
Int/Decimal |
Int/Decimal |
Decimal value. Somma gli operandi. |
| Altro valore | Altro valore | Undefined. |
Operatore -
Sottrae l'operando destro dall'operando sinistro.
Sintassi:
.expression -
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int |
Int |
Int value. Sottrae l'operando destro dall'operando sinistro. |
Int/Decimal |
Int/Decimal |
Decimal value. Sottrae l'operando destro dall'operando sinistro. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in valori decimali, viene restituito un valore Decimal. Sottrae l'operando destro dall'operando sinistro. In caso contrario, restituisce Undefined. |
| Altro valore | Altro valore | Undefined. |
| Altro valore | Altro valore | Undefined. |
Operatore *
Moltiplica l'operando sinistro per l'operando destro.
Sintassi:
.expression *
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int |
Int |
Int value. Moltiplica l'operando sinistro per l'operando destro. |
Int/Decimal |
Int/Decimal |
Decimal value. Moltiplica l'operando sinistro per l'operando destro. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in valori decimali, viene restituito un valore Decimal. Moltiplica l'operando sinistro per l'operando destro. In caso contrario, restituisce Undefined. |
| Altro valore | Altro valore | Undefined. |
Operatore /
Divide l'operando sinistro per l'operando destro.
Sintassi:
.expression /
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int |
Int |
Int value. Divide l'operando sinistro per l'operando destro. |
Int/Decimal |
Int/Decimal |
Decimal value. Divide l'operando sinistro per l'operando destro. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in valori decimali, viene restituito un valore Decimal. Divide l'operando sinistro per l'operando destro. In caso contrario, restituisce Undefined. |
| Altro valore | Altro valore | Undefined. |
Operatore %
Restituisce il resto della divisione dell'operando sinistro per l'operando destro.
Sintassi:
.expression %
expression
| Operando sinistro | Operando destro | Output |
|---|---|---|
Int |
Int |
Int value. Restituisce il resto della divisione dell'operando sinistro per l'operando destro. |
String/Int/Decimal |
String/Int/Decimal |
Se tutte le stringhe possono essere convertite in valori decimali, viene restituito un valore Decimal. Restituisce il resto della divisione dell'operando sinistro per l'operando destro. In caso contrario, Undefined. |
| Altro valore | Altro valore | Undefined. |