Якщо я використовую array_agg
для збору імен, я отримую свої імена, розділені комами, але якщо є null
значення, це значення також береться як ім'я в сукупності. Наприклад :
SELECT g.id,
array_agg(CASE WHEN g.canonical = 'Y' THEN g.users ELSE NULL END) canonical_users,
array_agg(CASE WHEN g.canonical = 'N' THEN g.users ELSE NULL END) non_canonical_users
FROM groups g
GROUP BY g.id;
він повертається ,Larry,Phil
замість просто Larry,Phil
(у моєму 9.1.2 це показано NULL,Larry,Phil
). як у цій скрипці
Натомість, якщо я використовую string_agg()
, він показує мені лише імена (без порожніх коми або нулі), як тут
Проблема в тому, що я Postgres 8.4
встановив на сервері і string_agg()
не працює там. Чи є спосіб зробити array_agg подібним до string_agg ()?