Преобразование определенных столбцов, которые повторяются, в строки в postgres - PullRequest
0 голосов
/ 28 мая 2020

У меня есть таблица в Postgres, в которой ~ 50 миллионов строк. Мне нужно преобразовать определенные столбцы в строки.

enter image description here

I need to unpivot certain columns for individuals that repeat as an individual column and repeat the non-individual variables against the respective ID -

The following is the output I need -

введите описание изображения здесь

Буду признателен за любую помощь по этому поводу.

1 Ответ

0 голосов
/ 28 мая 2020

50 миллионов строк - это не проблема в Greenplum, но возвращать такое количество строк клиенту бессмысленно. Я предполагаю, что вы хотите создать новую таблицу для этого нового вывода. Вы также собираетесь создать таблицу, которая будет в 2 раза больше, потому что вы берете одну строку и превращаете ее в 2.

create table new_table as
select id, mid_1 as mid, name_1 as name, age_1 as age, location
from your_table
union all
select id, mid_2 as mid, name_2 as name, age_2 as age, location
from your_table
distributed by (id);
...