我正在使用 Postgres 的 native 数组类型,并尝试查找 ID 不在数组收件人 ID 中的记录。
我可以找到他们所在的位置:
SELECT COUNT(*) FROM messages WHERE (3 = ANY (recipient_ids))
但这行不通:
SELECT COUNT(*) FROM messages WHERE (3 != ANY (recipient_ids))
SELECT COUNT(*) FROM messages WHERE (3 = NOT ANY (recipient_ids))
测试这种情况的正确方法是什么?
最佳答案
SELECT COUNT(*) FROM "messages" WHERE NOT (3 = ANY (recipient_ids))
你总是可以用 WHERE NOT (condition)
否定 WHERE (condition)
关于arrays - Postgres 不在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11730777/