MySQL 运算符优先级如何影响结果集?


MySQL 遵循运算符优先级,它具有以下运算符列表,相同的优先级在相同行中 −

INTERVAL
BINARY, COLLATE
!
- (unary minus), ~ (unary bit inversion)
^
*, /, DIV, %, MOD
-, +
<<, >>
&
|
=, <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP, IN
BETWEEN, CASE, WHEN, THEN, ELSE
NOT
&&, AND
XOR
||, OR
:=

对于表达式中处于相同优先级级别的运算符,求值从左向右进行。

示例

以下是显示运算符优先级对结果集的影响的示例 −

mysql> Select 5+3/2-2;
+---------+
| 5+3/2-2 |
+---------+
| 4.5000  |
+---------+
1 row in set (0.00 sec)

在以上的求值中,MySQL 首先求值 /(除) 因为它高于 +(加法) 或 –(减法) 的优先级。

更新于: 20-6-2020

163 次浏览

开启你的 职业生涯

完成课程,获得认证

立即开始
广告