sql语句逻辑运算优先级
1 -- SQL操作符优先级
这里所列SQL操作符优先级摘自MySQL5.1文档,需要注意的是:操作符优先级由低到高,排列在同一行的操作符具有相同的优先级。
优先级 | 操作符列表 |
1 | := |
2 | ||,OR,XOR |
3 | &&,AND |
4 | NOT |
5 | BETWEEN,CASE,WHEN,THEN,ELSE |
6 | =,<=>,>=,>,<=,<,<>,!=,IS,LIKE,REGEXP,IN |
7 | | |
8 | & |
9 | <<,>> |
10 | -,+ |
11 | *,/,DIV,%,MOD |
12 | ^ |
13 | - (一元减号),~ (一元比特反转) |
14 | ! |
15 | BINARY,COLLATE |
优先级太多实际很少人能够记得那么清楚。建议在编写SQL语句的时候,多使用"()"来强调优先级,可以避免很多错误!