CREATE OPERATOR 是用于创建运算符的 DDL 命令。
CREATE OPERATOR 一直存在于 PostgreSQL 中。
变更历史
- PostgreSQL 11
- 添加了
CREATE OPERATOR ... FUNCTION ...语法(提交 fd4417e8)
- 添加了
- PostgreSQL 8.3
- 移除了选项
LTCMP/GTCMP和SORT1/SORT2(提交 a78fcfb5)
- 移除了选项
- PostgreSQL 7.3
- PostgreSQL 7.2
- 移除了选项
MERGES - 添加了选项
SORT1和SORT2
- 移除了选项
示例
CREATE OPERATOR 的基本用法示例,这里基本上是重新实现了 + 运算符
postgres=# CREATE OPERATOR +@+ (
PROCEDURE = numeric_add,
LEFTARG = numeric,
RIGHTARG = numeric);
CREATE OPERATOR
postgres=# \do
List of operators
Schema | Name | Left arg type | Right arg type | Result type | Description
--------+------+---------------+----------------+-------------+------------------------------
public | +@+ | numeric | numeric | numeric | implementation of + operator
postgres=# SELECT 1 +@+ 1;
?column?
----------
2
(1 row)
参考资料
- PostgreSQL 文档: CREATE OPERATOR
