[英]Equivalent of LISTAGG() in Spark SQL
我正在 Spark SQL 中重寫 Redshift SQL。由於 LISTAGG() 在 Spark SQL 中不受支持,是否有等效的 function 或解決方法來實現它?
紅移 SQL:
SELECT
dp_info_id,
dp_type,
CASE
WHEN COALESCE(type,'-1') = 'Primary Name'
THEN LISTAGG(DISTINCT fir_name,'|') WITHIN GROUP (ORDER BY dp_info_id)
ELSE NULL
END AS primary_first_name,
FROM
dp_info c
GROUP BY
dp_info,
type,
dp_type
要從組中獲取所有值的數組,我猜你應該使用 collect_set ( https://docs.databricks.com/sql/language-manual/functions/collect_list.html )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.