Я пытаюсь преобразовать некоторые запросы Oracle в Postgres и наткнулся на listagg
.
Код Oracle
select max(eta) eta, mso_id, listagg(carrier_name, ',')
within group (order by eta) as carrier
from tb_flight_schedule group by mso_id;
Я узнал, что эквивалентом listagg
в Postgres является string_agg
, и заменил listagg
на string_agg
. Однако я столкнулся с ошибкой (ОШИБКА: функция string_agg (переменный символ, неизвестно, дата) не существует). Я что-то упустил в запросе? Запрос Postgres ниже:
select max(eta) eta, mso_id, string_agg(carrier_name, ',')
WITHIN GROUP (ORDER BY eta) as carrier
from tb_flight_schedule group by mso_id;