Групповое объединение в Улей sql - PullRequest
0 голосов
/ 28 апреля 2020

Я считаю немного сложным для достижения нижеприведенной задачи. Пожалуйста, найдите приложение для примера набора данных и вывода. enter image description here В основном я хочу объединить в столбце c6 в 1 с разделением канала для каждой группы

Ответы [ 2 ]

0 голосов
/ 28 апреля 2020

Вы можете использовать функцию сбора

с помощью collect ()

select c1,c2,c3,c4,c5,concat_ws("|",collect(c6)) c6 from <table> group by c1,c2,c3,c4,c5

Используя collect_set ()

select c1,c2,c3,c4,c5,concat_ws("|",collect_set(c6)) c6 from <table> group by c1,c2,c3,c4,c5
0 голосов
/ 28 апреля 2020

Используйте group by, а затем collect_list с функцией concat_ws.

select c1,c2,c3,c4,c5,concat_ws("|",collect_list(c6)) c6 from 
  <table_name> 
group by c1,c2,c3,c4,c5;
...