eg

df
uid label
A A1
A A2
B B1
B B1
B B2

           

result
uid label_list
A A1,A2
B B1,B2

                                                                            

# presto实现

select 
  uid
  ,array_join(array_distinct(array_agg(label), ',')) as "label_list"
from df
group by uid;

# mysql实现

select 
  uid
  ,group_concat(distinct label separator ',') as "label_list"
from df
group by uid


'''
语法:group_concat( [distinct] 字段 [order by 字段 asc/desc  ] [separator '分隔符'] )
MYSQL中group_concat有长度限制!默认1024
SET [SESSION | GLOBAL] group_concat_max_len = val; 

'''

         

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐