操作符
最近更新时间: 2026-06-30 15:06: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 | 支持 | 创建用户自定义操作符 |