【发布时间】:2021-06-08 04:00:50
【问题描述】:
我有一个包含两个数组列的数据框,如下所示:
Arrayed_Column_1
[{"ID":222222,"No":2},{"ID":333333,"No":1}]
[{"ID":555555,"No":2},{"ID":333333,"No":1},{"ID":333333,"No":3}]
[{"ID":222222,"No":2},{"ID":555555,"No":1},{"ID":333333,"No":3}]
[{"ID":555555,"No":2},{"ID":333333,"No":1}]
Arrayed_Column_2
[{"ID":333333,"No":2},{"ID":666663,"No":1}]
[{"ID":333333,"No":2},{"ID":666666,"No":1},{"ID":333333,"No":3}]
[{"ID":222222,"No":2},{"ID":555555,"No":1},{"ID":333333,"No":3}]
[{"ID":555333,"No":2},{"ID":66666,"No":1}]
如何在不使用explode 函数的情况下过滤column_2 中同时存在ID 和column_1 的No 组合的那些行?
我知道array_contains 函数,但它只检查特定值。
【问题讨论】:
-
Arrayed_Column_1的类型是什么?地图数组? -
这是一个带有结构化元素的数组
标签: arrays dataframe apache-spark pyspark apache-spark-sql