问题
我需要在我的代码中更新这一行。我怎么做?
“case StringType => concat_ws(”,“,collect_list(col(c)))”仅附加现有字段中尚不存在的字符串。在……
你可能想用 collect_set() 代替 collect_list() 。这将在收集过程中自动删除重复项。
collect_set()
collect_list()
我不确定为什么要将唯一字符串数组转换为逗号分隔列表。 Spark可以轻松处理数组列,并显示它们以便可以看到每个元素。但是,如果您绝对必须将数组转换为逗号分隔的字符串,请使用 array_join 在Spark 2.4+或早期版本的Spark中的UDF。
array_join