аггрегатор по аггрегаторам - Mailing list pgsql-ru-general

From Dmitry E. Oboukhov
Subject аггрегатор по аггрегаторам
Date
Msg-id 20120413090503.GA5518@apache.rbscorp.ru
Whole thread Raw
List pgsql-ru-general
например:

 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

Attachment

pgsql-ru-general by date:

Previous
From: "Dmitry E. Oboukhov"
Date:
Subject: А кто работал с партицированием таблиц? FOREIGN
Next
From: Sergey Konoplev
Date:
Subject: Re: [pgsql-ru-general] аггрегатор по аггрегаторам