我找到了这样的代码:
SELECT 'a' ||| 'b';
我试图谷歌这个运算符的含义,但谷歌忽略了符号数据。 SymbolHound没有返回任何有意义的结果。
我测试了一个PostgreSQL 8.4服务器和9.1服务器。
在PostgreSQL 8.4中,它与字符串连接相同,但有一点不同:
SELECT 'a' ||| 'b'; -- 'ab'
SELECT 'a' || 'b'; -- 'ab'
SELECT 'a' ||| NULL; -- 'a'
SELECT 'a' || NULL; -- NULL
在PostgreSQL 9.1中,未定义此运算符。
SELECT 'a' ||| 'b'; -- ERROR
SELECT 'a' || 'b'; -- 'ab'
SELECT 'a' || NULL; -- NULL
这是在某处正式记录的吗?这是特定于配置的吗?
答案 0 :(得分:10)
|||
不是PostgreSQL附带的标准运算符; as you can see here, it doesn't exist in stock 8.4 either。我说有人在你的8.4安装中用CREATE OPERATOR
安装了它。
尝试在8.4 DB中使用psql
命令\do
(即“描述运算符”),或者执行pg_dump
并检查转储以获取运算符及其关联的定义功能
select * from pg_operator where oprname = '|||';
也可能有用。请注意oprcode
列,其中显示了实现运算符的函数。