Re: Array fundamentals - Mailing list pgsql-performance

From Robert Haas
Subject Re: Array fundamentals
Date
Msg-id CA+TgmobVbh3XGONv_HKFhDgSyfuY6cBcR4k0+Jj7zm6380V6dA@mail.gmail.com
Whole thread Raw
In response to Array fundamentals  (idc danny <idcdanny@yahoo.com>)
List pgsql-performance
On Sat, Jun 2, 2012 at 1:05 PM, idc danny <idcdanny@yahoo.com> wrote:
> Hi all,
> I got 2 complementary functions, which will do opposite things.
> 1 - CombineStrings(stringarray character varying[])  RETURNS character
> varying
> This one will take as parameter an array of strings and will return a string
> with some formatted information inside
> 2-  SplitString2Array(stringtosplit character varying)  RETURNS character
> varying[]
> This one will take as parameter a formatted string and will return an array
> of string
>
> The following is true, both works just fine :
> select SplitString2Array(CombineStrings(ARRAY['abba', 'queen']))
> will return {'abba', 'queen'}
>
> Now, if I want do do the following:
> select CombineStrings(ARRAY[SplitString2Array("SomeTextColumn"), 'New string
> to add']) from "SomeTable"
> i get the following error:
> array value must start with "{" or dimension information
>
> What am I doing wrong, I am feeling I still don't get the array
> fundamentals. My goal is to add to inside formatted information in the
> column "SomeTextColumn" my new string 'New string to add' in the same manner
> if I would been used the following:
> Insert into "SomeTable"("SomeTextColumn") values
> (CombineString(ARRAY['abba', 'queen', 'New string to add']))

It sounds like one or both of your functions have a bug in them, but
without knowing what they're supposed to do or seeing the source code,
it's pretty hard to guess what it might be.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

pgsql-performance by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: optimizing queries using IN and EXISTS
Next
From: Robert Haas
Date:
Subject: Re: Sequencial scan in a JOIN