MySQL运算符优先级
常常发现很多基础的知识才是最重要的,是我们修复Bug的利器。
#MySQL运算符的优先级
运算符的优先级决定了不同的运算符在表达式中计算的先后顺序。
MySQL中所有运算符的优先级的顺序按照从高到低,从上到下,依次降低。一般情况下,级别高的运算符先进行计算,如果级别相同,MySQL按照表达式的顺序从左到右依次计算。
MySQL运算符的优先级如下:
优先级 运算符 (最高) ! 3 -(负号),~(按位取反) 4 ^(按位异或) 5 *,/(DIV),%(MOD) 6 +,- 7 >>,<< 8 & 9 | 10 =(比较运算),<=>,<,<=,>,>=,!=,<>,IN,IS NULL,LIKE,REGEXP 11 BETWEEN AND,CASE,WHEN,THEN,ELSE 12 NOT 13 &&,AND 14 XOR 15 ||,OR (最低) =(赋值运算),:=
我们可以看出,不同运算符的优先级是不同的。在无法确定优先级的情况下,可以使用圆括号()来改变优先级,并且这样会使计算过程更加清晰。