在不使用explode的情况下访问Spark Dataframes中的嵌套Map列

时间:2016-07-06 14:55:16

标签: scala apache-spark dataframe

我在Spark数据框中有一个列,其架构如下所示:

|-- seg: map (nullable = false)
 |    |-- key: string
 |    |-- value: array (valueContainsNull = false)
 |    |    |-- element: struct (containsNull = false)
 |    |    |    |-- id: integer (nullable = false)
 |    |    |    |-- expiry: long (nullable = false)

列中的值如下所示:

Map(10000124 -> WrappedArray([20185255,1561507200], [20185256,1561507200]))]

我想要做的是从这个Map列创建一个列,它只包含一个[20185255,20185256]数组(数组的元素是WrappedArray中每个数组的第一个元素)。 我该怎么做?

我试图不使用"爆炸"。

**他们也可以使用UDF来接收Map并获取这些值吗?**

0 个答案:

没有答案