X-Original-To: pgsql-sql-postgresql.org@localhost.postgresql.org Received: from localhost (unknown [200.46.204.2]) by svr1.postgresql.org (Postfix) with ESMTP id D40FED1D9F6 for ; Sun, 18 Apr 2004 14:42:40 -0300 (ADT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024) with ESMTP id 95131-03 for ; Sun, 18 Apr 2004 14:42:20 -0300 (ADT) Received: from smtp.istop.com (dci.doncaster.on.ca [66.11.168.194]) by svr1.postgresql.org (Postfix) with ESMTP id 39C35D1C516 for ; Sun, 18 Apr 2004 14:42:19 -0300 (ADT) Received: from stark.xeocode.com (gsstark.mtl.istop.com [66.11.160.162]) by smtp.istop.com (Postfix) with ESMTP id 613AC17C48E; Sun, 18 Apr 2004 13:42:19 -0400 (EDT) Received: from localhost ([127.0.0.1] helo=stark.xeocode.com) by stark.xeocode.com with smtp (Exim 3.36 #1 (Debian)) id 1BFGJ9-0008K4-00; Sun, 18 Apr 2004 13:42:19 -0400 To: Marco Lazzeri Cc: pgsql-sql@postgresql.org Subject: Re: Concatenate results of a single column query References: <1082303095.5913.3.camel@macbeth.intranet.noze.it> In-Reply-To: <1082303095.5913.3.camel@macbeth.intranet.noze.it> From: Greg Stark Organization: The Emacs Conspiracy; member since 1992 Date: 18 Apr 2004 13:42:18 -0400 Message-ID: <87oepp6v45.fsf@stark.xeocode.com> Lines: 22 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Scanned: by amavisd-new at postgresql.org X-Archive-Number: 200404/154 X-Sequence-Number: 17529 Marco Lazzeri writes: > SELECT > p.name, ARRAY(SELECT nicknames FROM people WHERE people.id = p.id) > FROM people AS p > Any suggestions? Something like: db=> create aggregate array_aggregate (basetype = integer, sfunc = array_append, stype = integer[], initcond = '{}'); CREATE AGGREGATE db=> select array_aggregate(id) from tab; array_aggregate ------------------------------------------------------------------------------------------------------------------------------------------------------------ {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,28,29,30,31,32,33,34,36,37,38,39,40,41,42,43,27,26,44,45,46,47,48,49,50,51,52,53,54,35} (1 row) -- greg