追加columnA到現有的陣列型的B列如何將一列添加到Hive中的現有數組列?
select
string_column_A,
array_column_B,
append(array_column_B, string_column_A) as AB
from onetable;
更精確,我應該說,因爲我希望沒有重複「設置」,而不是上述的「陣列」,。但是這裏的重複並不是什麼大問題。
在Hive中實現這一點的最佳方式是什麼?我檢查了蜂巢文檔,但找不到任何相關信息來執行此操作。
這是一個絕妙的主意!但問題是現在它不再是一個數組:select array_contains(array(concat_ws(「,」,「A」,concat_ws(「,」,array('B','C'))),'B') ;返回「假」。 – Osiris
有沒有什麼辦法可以使數組元素唯一?select concat_ws(「,」,「A」,concat_ws(「,」,array('A','C')))will give [ 「A」,「A」,「C」]],希望獲得[[「A」,「C」]] – Osiris
嘗試collect_set(col) https://cwiki.apache.org/confluence/display/蜂巢/ LanguageManual + UDF#LanguageManualUDF,StringFunctions – Dhruv