数组中的至少一个元素存在于另一个数组中

Posted

技术标签:

【中文标题】数组中的至少一个元素存在于另一个数组中【英文标题】:Minimum one element from the array exist in another array 【发布时间】:2021-05-20 07:21:31 【问题描述】:

我想检查一个数组中的最少一个元素是否存在于另一个数组中。下面是供参考的SQL代码:

CREATE TEMP FUNCTION is_array_in_array(subset ARRAY<string>, main ARRAY<string>)
AS ((SELECT min(a in UNNEST(main)) FROM UNNEST(subset) as a));

PySpark 中最好的实现是什么?

【问题讨论】:

【参考方案1】:

您可以检查数组是否重叠(docs):

import pyspark.sql.functions as F

df2 = df.withColumn('is_array_in_array', F.arrays_overlap('subset_col', 'main_col'))

【讨论】:

以上是关于数组中的至少一个元素存在于另一个数组中的主要内容,如果未能解决你的问题,请参考以下文章

选择一个数组字段中的所有值都存在于另一个数组中的文档

根据存在于另一个模型数组中的日期对模型数组进行排序。斯威夫特 3

使用 lodash 检查数组是不是存在于另一个数组中

如果数组存在于另一个多维数组中,如何从多维数组中删除该数组? [复制]

php 如果判断一个二维数组中数据是不是存在于另一个二维数组中?

如果值存在于另一个字段数组中,Laravel 验证规则