Arithmetic operators

Arithmetic operators are functions that can be used as infix operators, or as prefix operators.

Syntax

arithmetic_expr ::=
   | value_expr binary_operator value_expr
   | unary_operator value_expr

arithmetic_infix_operator ::=
   + | - | * | / | %

arithmetic_unary_operator ::=
   + | -

Arguments

Parameter

Description

value_expr

Numeric expression, or expression that can be cast to a numeric expression

Arithmetic operators

Operator

Syntax

Description

+ (unary)

+a

Converts a string to a numeric value. Identical to a :: double

+

a + b

Adds two expressions together

- (unary)

-a

Negates a numeric expression

-

a - b

Subtracts b from a

*

a * b

Multiplies a by b

/

a / b

Divides a by b

%

a % b

Modulu of a by b. See also MOD, %

Notes

  • If any of the inputs value are NULL, the result is NULL.

Examples

Coercing with a unary +

numbers=> SELECT +'5';
5.00

Using infix operators

numbers=> SELECT 5*3 AS "5*3", 5+3 AS "5+3", 2-5 AS "2-5"
.                , 2.0-5 AS "2.0-5", 11 % 5 AS "11%5", 11/5 AS "11/5", 11.0 / 5 AS "11.0/5";
5*3 | 5+3 | 2-5 | 2.0-5 | 11%5 | 11/5 | 11.0/5
----+-----+-----+-------+------+------+-------
 15 |   8 |  -3 |    -3 |    1 |    2 |    2.2