Re: array sort for varchar arrays?

From: "Matthew Dennis" <mdennis(at)merfer(dot)net>
To: PGSQL <pgsql-general(at)postgresql(dot)org>
Subject: Re: array sort for varchar arrays?
Date: 2008-07-09 19:25:31
Message-ID: e94d85500807091225j630bf00cm15fa20ab98699b1f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wed, Jul 9, 2008 at 12:28 AM, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
wrote:

> 2008/7/8 Matthew Dennis <mdennis(at)merfer(dot)net>:
> > I'm likely overlooking something, but I can't seem to find a function to
> > sort a varchar array. Something like "select sort('{y,z,x}'::varchar[])"
> =>
> > {'x','y','z'}.
> >
>
> create function sort(anyarray)
> returns anyarray as $$
> select array(select $1[i] from generate_series(array_lower($1,1),
> array_upper($1,1)) g(i) order by 1)
> $$ language sql strict immutable;
>
> postgres=# select sort(array[1,2,3,1]);
> sort
> -----------
> {1,1,2,3}
> (1 row)
>
> postgres=# select sort(array['a','b','c','a']);
> sort
> -----------
> {a,a,b,c}
> (1 row)
>
> Regards
> Pavel Stehule
>

Thanks Pavel, I ended up writing a method pretty much like that. It seems
like that would be inefficient though (works ok for my use though). Does
anyone know if there are future plans to add an array_sort method?

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Garry Saddington 2008-07-09 19:30:48 regexp help
Previous Message aravind chandu 2008-07-09 19:16:28 information related to blobs