最近在做项目的时候需要对数据组埋点得到的数据进行合并:
1.原始数据我需要拿到post_id,district_id字段,而一个post可能投放到同一城市的多个district,而在后期使用数据时,需要的数据形式是同一个post_id的记录不可以因为多个district产生多条记录,因此需要将多个district合并为一个值;
2.而在原始表中,district_id的值是INT类型;
3.需要对字段进行去重。
因此,我进行了如下操作:
select
post_id,
concat_ws(',',collect_set(string(district_id))) district_id
from
ods.ods_jz_post_address
group by post_id
***若不需要去重,可选择collect_list()函数代替collect_set(),具体语法请自行查找***
网友评论