Re: postgresql order lowercase before uppercase

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: basti <mailinglist(at)unix-solution(dot)de>, pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: postgresql order lowercase before uppercase
Date: 2021-03-19 07:33:18
Message-ID: f09b68f48506df4e122e279642f76165778b77fd.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Thu, 2021-03-18 at 23:51 +0100, basti wrote:
> Am 18.03.21 um 17:19 schrieb Laurenz Albe:
> > On Thu, 2021-03-18 at 15:39 +0100, basti wrote:
> > > I need to as follow:
> > >
> > > ande
> > > Amma
> > > Anit
> > > Anti
> > > Brac
> > > Cali
> > > ....
> >
> > Create an ICU collation:
> >
> > CREATE COLLATION inv (PROVIDER = icu, LOCALE = "en-US(at)CaseFirst=LowerFirst");
>
> I have try the inv collate, that does not work on PG 9.6 and 10.
>
> Order is the same as without collate.
>
> SELECT a.name
> FROM foo as a
> LEFT JOIN (SELECT name from foo WHERE name = 'lowercase name') as b
> on a.name = b.name
> ORDER by b.name,a.name
>
> does it.
>
> perhaps there is a better way?

Ah, I misunderstood what you want.

SELECT a.name
FROM foo as a
ORDER BY a.name <> lower(a.name), a.name;

That works because FALSE < TRUE.

Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Andrus 2021-03-19 07:56:15 Re: SV: Log files polluted with permission denied error messages after every 10 seconds
Previous Message Michael Paquier 2021-03-19 07:06:34 Re: SV: Log files polluted with permission denied error messages after every 10 seconds