GaussDB数据库兼容除分层查询以外的运算符

92 阅读1分钟

操作符

GaussDB数据库兼容除分层查询以外的运算符。

SQL运算符
序号Oracle数据库GaussDB数据库
1一元运算符和二元运算符支持
2运算符优先级支持
算术运算符
序号Oracle数据库GaussDB数据库
1正负(+-)一元运算符支持
2加减(+-)二元运算符支持
3乘除(*/)二元运算符支持
COLLATE运算符
序号Oracle数据库GaussDB数据库
1COLLATE collation_name支持
连接运算符
序号Oracle数据库GaussDB数据库
1支持
集合运算符
序号Oracle数据库GaussDB数据库
1union支持
2union all支持
3intersect支持
4minus支持
多集合运算符
序号Oracle数据库GaussDB数据库
1multiset except支持
2multiset intersect支持
3multiset union支持
用户自定义运算符
序号Oracle数据库GaussDB数据库差异
1CREATE OPERATOR支持- Oracle中提供的CONTEXT_CLAUSE支持自定义功能评估函数,和GaussDB约束选择性评估函数不同。GaussDB不支持自定义功能评估函数。
  • GaussDB和Oracle可选参数差异较大。GaussDB具体请参考《开发者指南》中“SQL参考 > SQL语法 > C > CREATE OPERATOR”章节的参数说明部分。 |
比较操作符
序号Oracle数据库GaussDB数据库
1< =支持
2< >支持
3> =支持
4^ =支持
5! =不支持,!=中间存在空格时,!会被识别为阶乘。

当比较操作符(<=、<>、>=、^=)中间存在空格时,也可以识别成没有空格进行正常操作。!=中间存在空格时,!会被识别为阶乘,可能会导致结果与预期不一致。

更多详情请参考GaussDB 文档中心:doc.hcs.huawei.com/db/zh-cn/ga…