我正在尝试连接两个表,每个表都有一个数组列。我的意图是比较两个数组,如果第一个数组的任何值存在于第二个数组中。
我正在写where子句,如下所示
any(table1.array1) = any(table2.array2)
但它对我不起作用。
发布于 2020-09-23 05:37:24
操作符&&应该可以做到这一点。如果Array2中存在Array1中的任何元素,则会返回此消息。请参阅此处的PostgreSQL文档:Array Operators
select array[1,2,3] && array[2,4,5], array[1,2,3] && array[4,5, 6], array[1,2,3] && array[1]
Output: true, false, true
如果要查看第二个数组中是否存在所有元素,则应使用@>或<@
https://stackoverflow.com/questions/64021283
复制