например:
select * FROM (VALUES (ARRAY[1,2,3,3,4]), (ARRAY[1,2,2,3,4])) t;
column1
-------------
{1,2,3,3,4}
{1,2,2,3,4}
(2 rows)
WITH "a" AS (select * FROM (VALUES (ARRAY[1,2,3,3,4]), (ARRAY[1,2,2,3,4])) t )
SELECT array_agg(unnest(column1)) FROM "a";
ERROR: set-valued function called in context that cannot accept a set
А хотели бы получить общий массив {1,2,3,3,4,1,2,2,3,4}
Как это можно сделать?
И второй вопрос:
допустим имеется массив:
{1,2,3,3,4,1,2,2,3,4}
Как можно посчитать число уникальных элементов в нем?
SELECT COUNT(DISTINCT unnest(ARRAY[1,2,3,3,4,1,2,2,3,4]))
дает ту же ошибку
--
. ''`. Dmitry E. Oboukhov
: :’ : email: unera@debian.org jabber://UNera@uvw.ru
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537