操作符

最近更新时间: 2026-03-13 09:03:00

TDSQL PG 兼容绝大多数的Oracle 的运算符,包括算术运算符,连接运算符,集合运算符,其他运算符,具体如下。

SQL运算符

序号 Oracle数据库 TDSQL PG 数据库
1 一元运算符和二元运算符 支持
2 运算符优先级 支持

算术运算符

序号 Oracle 数据库运算符 TDSQL PG 数据库
1 正负一元运算符 支持
2 加减二元运算符 支持
3 乘除二元运算符 支持

COLLATE运算符

序号 Oracle数据库 TDSQL PG 数据库
1 COLLATE collation_name 支持

连接运算符

序号 Oracle 数据库运算符 TDSQL PG 数据库是否支持 描述
1 || 支持 连接运算

集合运算符

序号 Oracle 数据库运算符 TDSQL PG 数据库是否支持 描述
1 UNION 支持 集合求并集,结果集去重
2 UNION ALL 支持 集合求并集,结果集不去重
3 INTERSECT 支持 集合求交集,结果集去重
4 MINUS 支持 集合求差集,结果集去重

多集合运算符

序号 Oracle 数据库运算符 TDSQL PG 数据库是否支持 描述
1 MULTISET UNION ALL 支持 集合类型求并集,结果不去重
2 MULTISET UNION DISTINCT 支持 集合类型求并集,结果去重
3 MULTISET INTERSECT ALL 支持 集合类型求交集,结果不去重
4 MULTISET INTERSECT DISTINCT 支持 集合类型求交集,结果去重
5 MULTISET EXCEPT ALL 支持 集合类型求差集,如果有重复的元素,只移出第一个匹配项
6 MULTISET EXCEPT DISTINCT 支持 集合类型求差集,结果去重

注意:

多集合运算符左右两侧必须是元素类型为 SQL基础类型或嵌套表且不超过二维的 SCHEMA 对象,左右表达式返回的结果类型如果是嵌套表,那么必须是使用 create type 定义的。

比较操作符

序号 Oracle 数据库运算符 TDSQL PG 数据库是否支持
1 = 支持
2 > 支持
3 < 支持
4 <> 支持
5 >= 支持
6 <= 支持
7 ! = 支持

NULL判断操作符

序号 Oracle 数据库运算符 TDSQL PG 数据库是否支持 描述
1 IS NULL 支持 是否为 NULL
2 IS NOT NULL 支持 是否非 NULL

用户自定义操作符

序号 Oracle 数据库 TDSQL PG 数据库是否支持 描述
1 CREATE OPERATOR 支持 创建用户自定义操作符