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

Я получил следующий набор результатов в postgres и немного застрял. значения поступили из загруженного файла Excel, поэтому у меня есть столбец значений, разделенных запятыми, с первой строкой в ​​качестве заголовков и всеми последующими значениями

|   values     |
|col1,col2,col3|
|val1,val2,val3|
|val1,val2,val3|

, мой вопрос: как я могу добраться до моего желаемый результат описан ниже

| col1 | col2 | col3 |
| val1 | val2 | val3 |
| cal1 | val2 | val3 |

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 14 июля 2020

Простой метод: split_part():

select split_part(col, ',', 1) as col1,
       split_part(col, ',', 2) as col2,
       split_part(col, ',', 3) as col3
from t;

Однако это не позволяет вам переназначить имена столбцов. Это будет довольно сложно. Я бы порекомендовал вам просто жестко закодировать значения и удалить строку, которая выглядит так, как будто она имеет имена столбцов.

0 голосов
/ 14 июля 2020

Это всего лишь базовая c черновая часть того, как.

GetFirstRow()
.SplitByNewLine()
.SplitByComma()
.SortByIndexIntoTheeseLists(hereAreTheLists)
....
.Profit();

Надеюсь, это вам поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...