constant_expression ::= number | string | TRUE | FALSE | NULL
number ::= [MINUS] (FLOAT_CONSTANT | INT_CONSTANT | NUMBER_CONSTANT)
string ::= STRING_CONSTANT | DSTRING_CONSTANT
The syntax for INT_CONSTANT, FLOAT_CONSTANT, NUMBER_CONSTANT, STRING_CONSTANT, and DSTRING_CONSTANT was given in the Identifiers section.
In the current version, a query can contain the following constants (a.k.a. literals):
String literals are sequences of unicode characters enclosed in double or single quotes. String literals are translated into String items. Notice that any escape sequences appearing in a string literal will be converted to their corresponding character inside the corresponding String item.
Integer literals are sequences of one or more digits. Integer literals are translated into Integer items, if their value fits in 4 bytes, into Long items, if they fit in 8 bytes, otherwise to Number items.
- Floating point
Floating point literals represent real numbers using decimal notation and/or exponent. Floating-point literals are translated into Double items, if possible, otherwise to Number items.
Number literals are integer or floating-point literals followed by the 'n' or 'N' character. Number literals are always translated into Number items.
- TRUE / FALSE
The TRUE and FALSE literals are translated to the boolean true and false items, respectively.
The NULL literal is translated to the json null item.