Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Re: Sql ORDER BY and ASC/DESC question


  • From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
  • To: Gregory Stark <stark(at)enterprisedb(dot)com>
  • Cc: "A. Kretschmer" <andreas(dot)kretschmer(at)schollglas(dot)com>, pgsql-sql(at)postgresql(dot)org
  • Subject: Re: Sql ORDER BY and ASC/DESC question
  • Date: Wed, 30 Jan 2008 13:00:29 -0500
  • Message-id: <14687.1201716029@sss.pgh.pa.us> <text/plain>

Gregory Stark <stark(at)enterprisedb(dot)com> writes:
> If you're not concerned with the planner being able to find indexes to satisfy
> these orderings (ie, you don't mind always doing a sort) you could do
> something like:

> ORDER BY 
>  CASE ? 
>  WHEN 1 THEN name ASC
>  WHEN 2 THEN name DESC
>  WHEN 3 THEN height ASC
>  WHEN 4 THEN height DESC
>  ELSE id ASC
>  END

Uh, no, putting the ASC/DESC decoration inside a CASE like that is not
gonna work --- it's only allowed at the top level of an ORDER BY clause.
For numerical sort keys you can cheat by using "-x" in place of
"x DESC", but I'm not aware of any equivalent hack for text keys.

			regards, tom lane



Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group