Dynamic multi dimensional arrays in SQL

From: Dane Foster <studdugie(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Dynamic multi dimensional arrays in SQL
Date: 2015-07-10 14:52:56
Message-ID: CA+Wxin+_-sGtSFbXQNrEQqAV6xw3z4qKhPchT+jhPz_wetUC=A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello,

I'm trying to dynamically construct a multi dimensional array where the
outer most array's elements are binary arrays. My initial attempt was
something to the effect of:
SELECT ARRAY(SELECT ARRAY[true::text,false::text] FROM
generate_series(1,2));

My expectation is a result of the form: {{true,false},{true,false}}

But it doesn't work. I get the following error instead: "could not find
array type for data type text[]".

The only way I've gotten it to work is to concatenate strings and
explicitly cast the string to an array. It's ugly. I'm hoping the issue is
that I'm doing something wrong and not that string concatenation or a
procedural language are the only solutions.

Any insight into what I'm doing wrong would be appreciated.

Regards,

Dane

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Pavel Stehule 2015-07-10 15:21:56 Re: Dynamic multi dimensional arrays in SQL
Previous Message Tom Lane 2015-07-10 14:03:46 Re: How to test SSL cert from CA?