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 首先求值 /(除法) 的值,因为它的优先级高于 +(加法) 或 -(减法)。

更新于: 2020年6月20日

163 次浏览

开启您的职业生涯

完成课程获得认证

开始
广告