Download PDFSubmit Feedback

  • Order of Precedence
  • Supported Operators

Time-Series Operators

Operators are symbols or keywords used to perform specific operations.

Order of Precedence

This table lists all KWDB operators from highest to lowest precedence, which determines the order in which they are evaluated within a statement. Operators with the same precedence are left associative. This means that those operators are grouped together starting from the left and moving right.

Order of PrecedenceOperatorNameOperator Arity
1.Member field access operatorbinary
2::Type castbinary
3-Unary minusunary (prefix)
3~Bitwise notunary (prefix)
4^Exponentiationbinary
5*Multiplicationbinary
5/Divisionbinary
5//Floor divisionbinary
5%Modulobinary
6+Additionbinary
6-Subtractionbinary
7<<Bitwise left-shiftbinary
7>>Bitwise right-shiftbinary
8&Bitwise ANDbinary
9#Bitwise XORbinary
10|Bitwise ORbinary
11||Concatenationbinary
12[NOT] INValue is [not] in the set of values specifiedbinary
12[NOT] LIKEMatches [or not] LIKE expression, case sensitivebinary
12~Matches regular expression, case sensitivebinary
12!~Does not match regular expression, case sensitivebinary
12~*Matches regular expression, case insensitivebinary
12!~*Does not match regular expression, case insensitivebinary
13=Equalbinary
13<Less thanbinary
13>Greater thanbinary
13<=Less than or equalbinary
13>=Greater than or equalbinary
13!=, <>Not equalbinary
14ISNULL, IS UNKNOWN, NOTNULL, IS NOT UNKNOWNEquivalent to IS NULL / IS NOT NULLunary (suffix)
14IS NAN, IS NOT NANComparison with the floating-point NaN valueunary (suffix)

Supported Operators

OperatorExpressionReturn
#int2 # int2int8
#int2 # int4int8
#int2 # int8int8
#int4 # int2int8
#int4 # int4int8
#int4 # int8int8
#int8 # int2int8
#int8 # int4int8
#int8 # int8int8
%float4 % float4float8
%float4 % float8float8
%float8 % float4float8
%float8 % float8float8
%int2 % int2int8
%int2 % int4int8
%int2 % int8int8
%int4 % int2int8
%int4 % int4int8
%int4 % int8int8
%int8 % int2int8
%int8 % int4int8
%int8 % int8int8
&int2 & int2int8
&int2 & int4int8
&int2 & int8int8
&int4 & int2int8
&int4 & int4int8
&int4 & int8int8
&int8 & int2int8
&int8 & int4int8
&int8 & int8int8
*float4 * float4float8
*float4 * float8float8
*float8 * float4float8
*float8 * float8float8
*int2 * int2int8
*int2 * int4int8
*int2 * int8int8
*int4 * int2int8
*int4 * int4int8
*int4 * int8int8
*int8 * int2int8
*int8 * int4int8
*int8 * int8int8
+float4 + float4float8
+float4 + float8float8
+float8 + float4float8
+float8 + float8float8
+int2 + int2int8
+int2 + int4int8
+int2 + int8int8
+int4 + int2int8
+int4 + int4int8
+int4 + int8int8
+int8 + int2int8
+int8 + int4int8
+int8 + int8int8
+timestamp + intervaltimestamp
+timestamptz + intervaltimestamptz
--float4float8
--float8float8
--int2int8
--int4int8
--int8int8
-float4 - float4float8
-float4 - float8float8
-float8 - float4float8
-float8 - float8float8
-int2 - int2int8
-int2 - int4int8
-int2 - int8int8
-int4 - int2int8
-int4 - int4int8
-int4 - int8int8
-int8 - int2int8
-int8 - int4int8
int8 - int8int8
-timestamp - timestampinterval
-timestamp - timestamptzinterval
-timestamp - intervaltimestamp
-timestamptz - intervaltimestamptz
-timestamptz - timestampinterval
-timestamptz - timestamptzinterval
/float4 / float4float8
/float4 / float8float8
/float8 / float4float8
/float8 / float8float8
/int2 / int2decimal
/int2 / int4decimal
/int2 / int8decimal
/int4 / int2decimal
/int4 / int4decimal
/int4 / int8decimal
/int8 / int2decimal
/int8 / int4decimal
/int8 / int8decimal
<BOOL < BOOLBOOL
<float4 < float4BOOL
<float4 < float8BOOL
<float8 < float4BOOL
<float8 < float8BOOL
<float4 < int2BOOL
<float4 < int4BOOL
<float4 < int8BOOL
<float8 < int2BOOL
<float8 < int4BOOL
<float8 < int8BOOL
<int2 < float4BOOL
<int2 < float8BOOL
<int4 < float4BOOL
<int4 < float8BOOL
<int8 < float4BOOL
<int8 < float8BOOL
<int2 < int2BOOL
<int2 < int4BOOL
<int2 < int8BOOL
<int4 < int2BOOL
<int4 < int4BOOL
<int4 < int8BOOL
<int8 < int2BOOL
<int8 < int4BOOL
<int8 < int8BOOL
<timestamp < timestampBOOL
<timestamp < timestamptzBOOL
<timestamptz < timestampBOOL
<timestamptz < timestamptzBOOL
<<int2 << int2int8
<<int2 << int4int8
<<int2 << int8int8
<<int4 << int2int8
<<int4 << int4int8
<<int4 << int8int8
<<int8 << int2int8
<<int8 << int4int8
<<int8 << int8int8
<=BOOL <= BOOLBOOL
<=float4 <= float4BOOL
<=float4 <= float8BOOL
<=float8 <= float4BOOL
<=float8 <= float8BOOL
<=float4 <= int2BOOL
<=float4 <= int4BOOL
<=float4 <= int8BOOL
<=float8 <= int2BOOL
<=float8 <= int4BOOL
<=float8 <= int8BOOL
<=int2 <= float4BOOL
<=int2 <= float8BOOL
<=int4 <= float4BOOL
<=int4 <= float8BOOL
<=int8 <= float4BOOL
<=int8 <= float8BOOL
<=int2 <= int2BOOL
<=int2 <= int4BOOL
<=int2 <= int8BOOL
<=int4 <= int2BOOL
<=int4 <= int4BOOL
<=int4 <= int8BOOL
<=int8 <= int2BOOL
<=int8 <= int4BOOL
<=int8 <= int8BOOL
<=timestamp <= timestampBOOL
<=timestamp <= timestamptzBOOL
<=timestamptz <= timestampBOOL
<=timestamptz <= timestamptzBOOL
=BOOL = BOOLBOOL
=float4 = float4BOOL
=float4 = float8BOOL
=float8 = float4BOOL
=float8 = float8BOOL
=float4 = int2BOOL
=float4 = int4BOOL
=float4 = int8BOOL
=float8 = int2BOOL
=float8 = int4BOOL
=float8 = int8BOOL
=int2 = float4BOOL
=int2 = float8BOOL
=int4 = float4BOOL
=int4 = float8BOOL
=int8 = float4BOOL
=int8 = float8BOOL
=int2 = int2BOOL
=int2 = int4BOOL
=int2 = int8BOOL
=Int4 = int2BOOL
=int4 = int4BOOL
=int4 = int8BOOL
=int8 = int2BOOL
=int8 = int4BOOL
=int8 = int8BOOL
=timestamp = timestampBOOL
=timestamp = timestamptzBOOL
=timestamptz = timestampBOOL
=timestamptz = timestamptzBOOL
>>int2 >> int2int8
>>int2 >> int4int8
>>int2 >> int8int8
>>int4 >> int2int8
>>int4 >> int4int8
>>int4 >> int8int8
>>int8 >> int2int8
>>int8 >> int4int8
>>int8 >> int8int8