Operator Precedence¶
Operator precedences are shown in the following list, from highest precedence to the lowest. Operators that are shown together on a line have the same precedence.
From highest precedence to the lowest |
Operators |
|---|---|
1 |
INTERVAL |
2 |
BINARY, COLLATE |
3 |
! |
4 |
- (unary minus), ~ (unary bit inversion) |
5 |
^ |
6 |
*, /, DIV, %, MOD |
7 |
-, + |
8 |
<<, >> |
9 |
& |
10 |
| |
11 |
= (comparison), <=>, >=, >, <=, <, <>, !=, IS, LIKE, , IN, MEMBER OF |
12 |
BETWEEN, CASE, WHEN, THEN, ELSE |
13 |
NOT |
14 |
AND, && |
15 |
XOR |
16 |
OR, || |
17 |
= (assignment) |
The precedence of = depends on whether it is used as a comparison operator (=) or as an assignment operator (=). When used as a comparison operator, it has the same precedence as , >=, >, <=, <, <>, !=, IS, LIKE, and IN().
For operators that occur at the same precedence level within an expression, evaluation proceeds left to right, with the exception that assignments evaluate right to left.