Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Operadores
Los siguientes operadores se pueden utilizar en WHERE las cláusulas SELECT y.
operador AND
Devuelve un resultado Boolean
. Realiza una AND operación lógica. Devuelve el valor true si los operandos izquierdo y derecho son true. De lo contrario, devuelve el valor false. Se necesitan operandos de tipo Boolean
u operandos de cadena "true" o "false" que no distingan entre mayúsculas y minúsculas.
Sintaxis:
.expression
AND
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Boolean |
Boolean |
Boolean . True si ambos operandos son true. De lo contrario, devuelve false. |
String /Boolean |
String /Boolean |
Si todas las cadenas son "true" o "false" (no se distingue entre mayúsculas y minúsculas), se convierten en valores de tipo Boolean y se procesan normalmente como . |
Otro valor | Otro valor | Undefined . |
Operador OR
Devuelve un resultado Boolean
. Realiza una operación OR lógica. Devuelve el valor true si el operando izquierdo o el operando derecho es true. De lo contrario, devuelve el valor false. Se necesitan operandos de tipo Boolean
u operandos de cadena "true" o "false" que no distingan entre mayúsculas y minúsculas.
Sintaxis:
.expression
OR
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Boolean |
Boolean |
Boolean . True si uno de los operandos es true. De lo contrario, devuelve false. |
String /Boolean |
String /Boolean |
Si todas las cadenas son "true" o "false" (no se distingue entre mayúsculas y minúsculas), se convierten en valores booleanos y se procesan normalmente como . |
Otro valor | Otro valor | Undefined . |
operador NOT
Devuelve un resultado Boolean
. Realiza una NOT operación lógica. Devuelve true si el operado es false. De lo contrario, devuelve true. Se necesita un operando Boolean
o un operando de cadena "true" o "false" que no distinga entre mayúsculas y minúsculas.
Sintaxis: NOT
.expression
Operando | Output |
---|---|
Boolean |
Boolean . True si el operando es false. De lo contrario, devuelve true. |
String |
Si la cadena es “true” o “false” (no distingue entre mayúsculas y minúsculas), se convierte en el valor booleano correspondiente y se devuelve el valor opuesto. |
Otro valor | Undefined . |
Operador IN
Devuelve un resultado Boolean
. Puede utilizar el operador IN en una WHERE cláusula para comprobar si un valor coincide con algún valor de una matriz. Devuelve true si hay coincidencia y false en caso contrario.
Sintaxis:
.expression
IN
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int /Decimal /String /Array /Object |
Array |
Verdadero si el elemento Integer /Decimal /String /Array /Object está en la raíz. De lo contrario, devuelve false. |
Ejemplo:
SQL: "select * from 'a/b' where 3 in arr" JSON: {"arr":[1, 2, 3, "three", 5.7, null]}
En este ejemplo, la cláusula de condición where 3 in arr
se evaluará como verdadera porque el número 3 está presente en la matriz denominada arr
. Por lo tanto, en la SQL declaración, select * from 'a/b'
se ejecutará. Este ejemplo también muestra que la matriz puede ser heterogénea.
operador EXISTS
Devuelve un resultado Boolean
. Puede utilizar el EXISTS operador en una cláusula condicional para comprobar la existencia de elementos en una subconsulta. Devuelve verdadero si la subconsulta devuelve uno o más elementos y falso si no devuelve ningún elemento.
Sintaxis:
.expression
Ejemplo:
SQL: "select * from 'a/b' where exists (select * from arr as a where a = 3)" JSON: {"arr":[1, 2, 3]}
En este ejemplo, la cláusula de condición where exists (select * from arr as a
where a = 3)
se evaluará como verdadera porque el número 3 está presente en la matriz denominada arr
. Por lo tanto, en la SQL declaración, select * from 'a/b'
se ejecutará.
Ejemplo:
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}]}
En este ejemplo, la cláusula de condición where exists (select * from e as e
where foo = 2)
se evaluará como verdadera porque la matriz e
del JSON objeto contiene el objeto{"foo":2}
. Por lo tanto, en la SQL declaración, select * from 'a/b'
se ejecutará.
> operador
Devuelve un resultado Boolean
. Devuelve el valor true si el operando izquierdo es superior al operando derecho. Los dos operandos se convierten en un valor Decimal
y, a continuación, se comparan.
Sintaxis:
.expression
>
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int /Decimal |
Int /Decimal |
Boolean . Devuelve el valor true si el operando izquierdo es superior al operando derecho. De lo contrario, devuelve false. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se pueden convertir en un valor Decimal y, a continuación, en un valor Boolean . Devuelve el valor true si el operando izquierdo es superior al operando derecho. De lo contrario, devuelve false. |
Otro valor | Undefined . |
Undefined . |
>= operador
Devuelve un resultado Boolean
. Devuelve el valor true si el operando izquierdo es superior o igual al operando derecho. Los dos operandos se convierten en un valor Decimal
y, a continuación, se comparan.
Sintaxis:
.expression
>=
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int /Decimal |
Int /Decimal |
Boolean . Devuelve el valor true si el operando izquierdo es superior o igual al operando derecho. De lo contrario, devuelve false. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se pueden convertir en un valor Decimal y, a continuación, en un valor Boolean . Devuelve el valor true si el operando izquierdo es superior o igual al operando derecho. De lo contrario, devuelve false. |
Otro valor | Undefined . |
Undefined . |
Operador <
Devuelve un resultado Boolean
. Devuelve el valor true si el operando izquierdo es inferior al operando derecho. Los dos operandos se convierten en un valor Decimal
y, a continuación, se comparan.
Sintaxis:
.expression
<
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int /Decimal |
Int /Decimal |
Boolean . Devuelve el valor true si el operando izquierdo es inferior al operando derecho. De lo contrario, devuelve false. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se pueden convertir en un valor Decimal y, a continuación, en un valor Boolean . Devuelve el valor true si el operando izquierdo es inferior al operando derecho. De lo contrario, devuelve false. |
Otro valor | Undefined |
Undefined |
Operador <=
Devuelve un resultado Boolean
. Devuelve el valor true si el operando izquierdo es inferior o igual al operando derecho. Los dos operandos se convierten en un valor Decimal
y, a continuación, se comparan.
Sintaxis:
.expression
<=
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int /Decimal |
Int /Decimal |
Boolean . Devuelve el valor true si el operando izquierdo es inferior o igual al operando derecho. De lo contrario, devuelve false. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se pueden convertir en un valor Decimal y, a continuación, en un valor Boolean . Devuelve el valor true si el operando izquierdo es inferior o igual al operando derecho. De lo contrario, devuelve false. |
Otro valor | Undefined |
Undefined |
Operador <>
Devuelve un resultado Boolean
. Devuelve el valor true si los operandos izquierdo y derecho no son iguales. De lo contrario, devuelve el valor false.
Sintaxis:
.expression
<>
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int |
Int |
True si el operando izquierdo no es igual al operando derecho. De lo contrario, devuelve false. |
Decimal |
Decimal |
True si el operando izquierdo no es igual al operando derecho. De lo contrario, devuelve false. Int se convierte en un valor Decimal antes de la comparación. |
String |
String |
True si el operando izquierdo no es igual al operando derecho. De lo contrario, devuelve false. |
Matriz | Matriz | True si los elementos de cada operando no son iguales y no están en el mismo orden. De lo contrario, devuelve false. |
Objeto | Objeto | True si las claves y los valores de cada operando no son iguales. De lo contrario, devuelve false. El orden de las claves y los valores no tiene importancia. |
Nulo | Nulo | False. |
Cualquier valor | Undefined |
Sin definir. |
Undefined |
Cualquier valor | Sin definir. |
Tipo no coincidente | Tipo no coincidente | True. |
Operador =
Devuelve un resultado Boolean
. Devuelve el valor true si los operandos izquierdo y derecho son iguales. De lo contrario, devuelve el valor false.
Sintaxis:
.expression
=
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int |
Int |
True si el operando izquierdo es igual al operando derecho. De lo contrario, devuelve false. |
Decimal |
Decimal |
True si el operando izquierdo es igual al operando derecho. De lo contrario, devuelve false. Int se convierte en un valor Decimal antes de la comparación. |
String |
String |
True si el operando izquierdo es igual al operando derecho. De lo contrario, devuelve false. |
Matriz | Matriz | True si los elementos de cada operando son iguales y están en el mismo orden. De lo contrario, devuelve false. |
Objeto | Objeto | True si las claves y los valores de cada operando son iguales. De lo contrario, devuelve false. El orden de las claves y los valores no tiene importancia. |
Cualquier valor | Undefined |
Undefined . |
Undefined |
Cualquier valor | Undefined . |
Tipo no coincidente | Tipo no coincidente | False. |
Operador +
El símbolo "+" es un operador sobrecargado. Se puede utilizar para la concatenación o la adición de cadenas.
Sintaxis:
.expression
+
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
String |
Cualquier valor | Convierte el operando derecho en una cadena que concatena al final del operando izquierdo. |
Cualquier valor | String |
Convierte el operando izquierdo en una cadena y concatena el operando derecho al final del operando izquierdo convertido. |
Int |
Int |
valor de Int . Agrega ambos operandos. |
Int /Decimal |
Int /Decimal |
valor de Decimal . Agrega ambos operandos. |
Otro valor | Otro valor | Undefined . |
Operador -
Resta el operando derecho del operando izquierdo.
Sintaxis:
.expression
-
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int |
Int |
valor de Int . Resta el operando derecho del operando izquierdo. |
Int /Decimal |
Int /Decimal |
valor de Decimal . Resta el operando derecho del operando izquierdo. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se convierten en decimales correctamente, se devuelve un valor Decimal . Resta el operando derecho del operando izquierdo. De lo contrario, devuelve Undefined . |
Otro valor | Otro valor | Undefined . |
Otro valor | Otro valor | Undefined . |
Operador *
Multiplica el operando izquierdo por el operando derecho.
Sintaxis:
.expression
*
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int |
Int |
valor de Int . Multiplica el operando izquierdo por el operando derecho. |
Int /Decimal |
Int /Decimal |
valor de Decimal . Multiplica el operando izquierdo por el operando derecho. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se convierten en decimales correctamente, se devuelve un valor Decimal . Multiplica el operando izquierdo por el operando derecho. De lo contrario, devuelve Undefined . |
Otro valor | Otro valor | Undefined . |
Operador /
Divide el operando izquierdo por el operando derecho.
Sintaxis:
.expression
/
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int |
Int |
valor de Int . Divide el operando izquierdo por el operando derecho. |
Int /Decimal |
Int /Decimal |
valor de Decimal . Divide el operando izquierdo por el operando derecho. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se convierten en decimales correctamente, se devuelve un valor Decimal . Divide el operando izquierdo por el operando derecho. De lo contrario, devuelve Undefined . |
Otro valor | Otro valor | Undefined . |
Operador %
Devuelve el resto de la división del operando izquierdo por el operando derecho.
Sintaxis:
.expression
%
expression
Operando izquierdo | Operando derecho | Output |
---|---|---|
Int |
Int |
valor de Int . Devuelve el resto de la división del operando izquierdo por el operando derecho. |
String /Int /Decimal |
String /Int /Decimal |
Si todas las cadenas se convierten en decimales correctamente, se devuelve un valor Decimal . Devuelve el resto de la división del operando izquierdo por el operando derecho. De lo contrario, Undefined . |
Otro valor | Otro valor | Undefined . |