我查看了 postgres 网站并将一个整数添加到一个 intarray 中,它显示为 int[] + int。我在表中有一个 int 数组,我最终想将添加了另一个值的数组插入到另一个表中。因此,使用 select 语句进行测试我不确定我在哪里搞砸了。
所以我在做:
SELECT myarray + 9::integer from foo
ERROR: operator does not exist: smallint[] + integer
我错过了什么。它看起来就像 9.1 postgres 的 intarrays 上的 postgres 网站。
使用连接运算符
手册中的详细信息:https ://www.postgresql.org/docs/current/9.1/functions-array.html
intarray
是一个扩展,您需要先将其添加到数组中(将其添加到数组末尾)操作符上。在添加扩展之前,您会得到这个。然后我们添加扩展并重试,
或者您可以使用常规的数组到元素连接
||
但要小心,它似乎要慢得多。此外,在您使用 smallint 的示例中,您可能必须将 rhs 显式转换为 smallint。
-对-
是的,我实际上只是想通了。我需要使用这样的东西
我使用了错误的命令。