Можно создать дубликат:
How to concatenate strings of a string field in a PostgreSQL ‘group by’ query?SQL: агрегатные функции и строка присоединиться/конкатенации
(я использую Postgres)
Есть ли агрегатные функции, которые работают со строками ?
Я хочу написать запрос по линиям
select table1.name, join(' - ', unique(table2.horse)) as all_horses
from table1 inner join table2 on table1.id = table2.fk
group by table1.name
Учитывая эти 2 таблицы:
| table1 | | table2 |
| id (pk) | name | | id (pk) | horse | fk |
+---------+-------+ +---------+---------+-------+
| 1 | john | | 1 | redrum | 1 |
| 2 | frank | | 2 | chaser | 1 |
| 3 | cigar | 2 |
Запрос должен возвращать:
| name | all_horses |
+--------+-------------------+
| john | redrum - chaser |
| frank | cigar |
Do функции, которые вместе с строки join
и unique
существуют в любых БД для строк?
хмм, похоже, не имеет те функции, определенный - вы можете мне помочь закрыть вопрос, как это дубликат 43870? – EoghanM
попробуйте обновить до 8.4, массив array_agg встроен. что касается закрытия вопроса, ему нужно 5 закрыть, на данный момент только 1 закрыл ваш вопрос. вы можете удалить свой собственный вопрос –