Operators

Daitum operators are first-class expression nodes, documented here alongside the formula functions. Each renders to a fixed platform expression form and infers its result type from its operands.

+ — ADD

Numeric addition.

Renders as (x + y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

Result types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

- — SUBTRACT

Numeric subtraction.

Renders as (x - y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

Result types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

* — MULTIPLY

Numeric multiplication.

Renders as (x * y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

Result types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

/ — DIVIDE

Numeric division.

Renders as (x / y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

Result types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

^ — POWER

Exponentiation.

Renders as (x ^ y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

Result types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

& — CONCAT

String concatenation (the + operator when either operand is a string).

Renders as (x & y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

  • STRING

  • STRING_ARRAY

  • BOOLEAN

  • BOOLEAN_ARRAY

  • DATE

  • DATETIME

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME

  • TIME_ARRAY

Result types

  • STRING

  • STRING_ARRAY

< — LESS_THAN

Less-than comparison.

Renders as (x < y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

  • DATE

  • DATETIME

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME

  • TIME_ARRAY

  • BOOLEAN

  • BOOLEAN_ARRAY

Result types

  • BOOLEAN

  • BOOLEAN_ARRAY

> — GREATER_THAN

Greater-than comparison.

Renders as (x > y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

  • DATE

  • DATETIME

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME

  • TIME_ARRAY

  • BOOLEAN

  • BOOLEAN_ARRAY

Result types

  • BOOLEAN

  • BOOLEAN_ARRAY

<= — LESS_EQUAL

Less-than-or-equal comparison.

Renders as (x <= y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

  • DATE

  • DATETIME

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME

  • TIME_ARRAY

  • BOOLEAN

  • BOOLEAN_ARRAY

Result types

  • BOOLEAN

  • BOOLEAN_ARRAY

>= — GREATER_EQUAL

Greater-than-or-equal comparison.

Renders as (x >= y).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

  • DATE

  • DATETIME

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME

  • TIME_ARRAY

  • BOOLEAN

  • BOOLEAN_ARRAY

Result types

  • BOOLEAN

  • BOOLEAN_ARRAY

= — EQUALS

Equality comparison.

Renders as x = y.

Accepted operand types

  • INTEGER

  • DECIMAL

  • STRING

  • BOOLEAN

  • DATE

  • DATETIME

  • TIME

  • INTEGER_ARRAY

  • DECIMAL_ARRAY

  • STRING_ARRAY

  • BOOLEAN_ARRAY

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME_ARRAY

  • OBJECT

  • OBJECT_ARRAY

  • INTEGER_MAP

  • DECIMAL_MAP

  • STRING_MAP

  • BOOLEAN_MAP

  • DATE_MAP

  • DATETIME_MAP

  • TIME_MAP

  • INTEGER_ARRAY_MAP

  • DECIMAL_ARRAY_MAP

  • STRING_ARRAY_MAP

  • BOOLEAN_ARRAY_MAP

  • DATE_ARRAY_MAP

  • DATETIME_ARRAY_MAP

  • TIME_ARRAY_MAP

Result types

  • BOOLEAN

  • BOOLEAN_ARRAY

<> — NOT_EQUALS

Inequality comparison.

Renders as x <> y.

Accepted operand types

  • INTEGER

  • DECIMAL

  • STRING

  • BOOLEAN

  • DATE

  • DATETIME

  • TIME

  • INTEGER_ARRAY

  • DECIMAL_ARRAY

  • STRING_ARRAY

  • BOOLEAN_ARRAY

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME_ARRAY

  • OBJECT

  • OBJECT_ARRAY

  • INTEGER_MAP

  • DECIMAL_MAP

  • STRING_MAP

  • BOOLEAN_MAP

  • DATE_MAP

  • DATETIME_MAP

  • TIME_MAP

  • INTEGER_ARRAY_MAP

  • DECIMAL_ARRAY_MAP

  • STRING_ARRAY_MAP

  • BOOLEAN_ARRAY_MAP

  • DATE_ARRAY_MAP

  • DATETIME_ARRAY_MAP

  • TIME_ARRAY_MAP

Result types

  • BOOLEAN

  • BOOLEAN_ARRAY

- — NEGATE

Unary numeric negation.

Renders as -(x).

Accepted operand types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

Result types

  • INTEGER

  • INTEGER_ARRAY

  • DECIMAL

  • DECIMAL_ARRAY

. — MEMBER_ACCESS

Member access on a field / named-value / object-array operand. Resolves the named field’s type, propagating array-ness from the receiver.

Renders as base.[field].

Accepted operand types

  • OBJECT

  • OBJECT_ARRAY

Result types

  • INTEGER

  • DECIMAL

  • STRING

  • BOOLEAN

  • DATE

  • DATETIME

  • TIME

  • INTEGER_ARRAY

  • DECIMAL_ARRAY

  • STRING_ARRAY

  • BOOLEAN_ARRAY

  • DATE_ARRAY

  • DATETIME_ARRAY

  • TIME_ARRAY

  • OBJECT

  • OBJECT_ARRAY

  • INTEGER_MAP

  • DECIMAL_MAP

  • STRING_MAP

  • BOOLEAN_MAP

  • DATE_MAP

  • DATETIME_MAP

  • TIME_MAP

[] — COLUMN_ACCESS

Column access on a raw table. Renders with brackets (the dot form is invalid on a raw table) and returns the array variant of the column’s type.

Renders as table[field].

Accepted operand types

  • TABLE

Result types

  • <column type>_ARRAY