运算符一般用于连接操作数或参数等单个数据项并返回结果。从语法上讲,运算符可以出现在操作数之前、操作数之后或两个操作数之间。
常见的运算符还可以分为一元和二元运算符:
一元运算符
一元运算符仅对一个操作数进行运算。一元运算符常用的格式如下:
运算符 操作数二元运算符
二元运算符是对两个操作数进行运算。二元运算符的常用格式如下:
操作数1 运算符 操作数2
说明
- 其他具有特殊格式的运算符可接受两个以上的操作数。
- 如果为运算符提供了空操作数
NULL, 则结果始终为空。唯一不遵循此规则的是字符连接运算符(||)。
OceanBase 数据库目前支持如下运算符:
OceanBase 数据库目前支持算术运算符、位运算符、比较运算符、逻辑运算符、日期时间运算符、字符连接运算符和排序规则运算符等。
运算符优先级概览
运算符从最高优先级到最低优先级如下所示。同一行上的运算符具有相同的优先级。
COLLATE
!
- (一元减), ~ (一元位反转)
^
*, /, DIV, %, MOD
-, +
<<, >>
&
|
= (比较), <=>, >=, >, <=, <, <>, !=, IN
BETWEEN,
NOT
AND, &&
XOR
OR, ||
= (赋值), :=
说明
=的优先级取决于它是用作比较运算符 (=) 还是用作赋值运算符 (=)。当用作比较运算符时,它具有与<=>、>=、>、<=、<、<>和!=相同的优先级;当用作赋值运算符时,它具有与:=相同的优先级。如果在表达式中出现相同优先级的运算符,从左到右进行计算,但赋值运算从右到左。
如下运算符的优先级和含义取决于 SQL 模式:
默认情况下,
||是逻辑OR运算符。启用PIPES_AS_CONCAT后,||是字符串连接,优先级在^和一元运算符之间。默认情况下,
!具有比NOT更高的优先级。启用HIGH_NOT_PRECEDENCE后,!并且不具有相同的优先级。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




