select id,concat_ws(',',sort_array(collect_list(name))) name from table group by id;先把多行合并成数组,再排序,再逗号分割。