Преобразование массива в строку с разделителем трубы | в PostgreSQL - PullRequest
17 голосов
/ 04 июня 2010

Мне нужно сформировать строку из заданного массива.

Предположим, что массив [1] = gvk, массив [2] = gvk1 и массив [3] = gvk2, тогда мне нужно получить эти значения в строку типа:

Mystring = gvk | gvk1 | gvk2

Ответы [ 2 ]

42 голосов
/ 04 июня 2010

Я думаю, что вы можете использовать функцию array_to_string здесь:

array_to_string (anyarray, текст) -> текст
объединяет элементы массива, используя предоставленный разделитель

Пример:

scalasb=> select array_to_string(ARRAY[1, 2, 3], '~^~');
 array_to_string 
-----------------
 1~^~2~^~3
(1 row)

scalasb=>
0 голосов
/ 04 июня 2010

В блоге MS SQL to POSTGRES есть демонстрация того, как реализовать функцию group_concat в Postgres. Это должно быть довольно просто изменить его, чтобы включить разделитель

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