2.1区别: 他们都是将分组中的某列转为一个数组返回,不同的是collect_list不去重而collect_set去重 2.2实例 原始temp数据 期望值 输入代码: select t.id, concat_ws(',', collect_set(t.class)) from temp t group by t.id 实际结果,class合并后并不是有序 解决方式: 将collect_set无序集合,改成collect...
collect_set()和collect_list()都用于将分组中的某列转换为数组返回,区别在于collect_set会进行去重,而collect_list则不会。例如,当使用collect_set进行分组时,如果结果不是有序的,可以通过将collect_set改为collect_list或使用sort_array函数进行排序来解决问题。group_concat()函数用于在有group by...