解决方法
对于整数数组(integer []),这应该与此示例一样简单:
UPDATE tbl SET col = col || 5 WHERE (5 = ANY(col)) IS NOT TRUE;
一个WHERE子句,如:
WHERE 5 <> ALL(col)
还会捕获空数组'{}’:: int []的情况,但如果NULL值作为数组的元素出现则会失败.
如果您的数组永远不会包含NULL作为元素,请考虑实际的array operators,可能由GIN索引支持.
UPDATE tbl SET col = col || 5 WHERE NOT col @> '{5}';
看到:
> Check if value exists in Postgres array
> Can PostgreSQL index array columns?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。