2016-12-05 100 views

回答

2

嘗試使用變換/斌/貓:

from mytable select transform(my_int_array) using '/bin/cat' as (my_int_array); 

第二個選項是改變並替換分隔符:

1) ALTER TABLE mytable CHANGE COLUMN my_int_array = my_int_array_string string; 
2) SELECT REPLACE(my_int_array_string, '\002', ', ') FROM mytable; 
+0

第一個解決方案完美地工作!謝謝! +1 – Kamaney

0

看來,最簡單的方法是寫一個自定義的UDF執行此特定的任務:

public class ConcatIntArray extends UDF { 
    public String evaluate(ArrayList<Integer> in, final String delimiter){ 
     return in.stream().map(u-> String.valueOf(u)).collect(Collectors.joining(delimiter)); 
    } 
} 
相關問題