如何找到两个数组列的交集
Posted
技术标签:
【中文标题】如何找到两个数组列的交集【英文标题】:How to find intersection of two array-columns 【发布时间】:2021-06-01 08:42:33 【问题描述】:我有两个数组(Int32)-列,有什么方法可以比较它们并得到这两个数组的交集的列?
我正在考虑arrayMap函数,但它似乎是无效的方法。
示例数据:
id col1 col2 col3
1 [1, 2, 3] [2, 3, 5] [2, 3]
...........
【问题讨论】:
【参考方案1】:https://clickhouse.tech/docs/en/sql-reference/functions/array-functions/#array-functions-arrayintersect
SELECT
[1, 2, 3] AS a,
[2, 3, 5] AS b,
arrayIntersect(a, b)
┌─a───────┬─b───────┬─arrayIntersect([1, 2, 3], [2, 3, 5])─┐
│ [1,2,3] │ [2,3,5] │ [3,2] │
└─────────┴─────────┴──────────────────────────────────────┘
【讨论】:
谢谢,在文档中没有找到这个以上是关于如何找到两个数组列的交集的主要内容,如果未能解决你的问题,请参考以下文章