On Fri, Jul 06, 2007 at 08:02:54PM +0400, Viatcheslav Kalinin wrote: > > # select start_date from show_date > # order by > # case when start_date > CURRENT_DATE then start_date end desc, > # case when start_date <= CURRENT_DATE then start_date end asc; The strange thing is when I try: select start_date from show_date order by case when start_date > CURRENT_DATE then 'start_date asc' else 'start_date desc ' end; It lists start_date's without ordering them (does nothing). However if I try: select start_date from show_date order by 'start_date desc'; I get a: ERROR: non-integer constant in ORDER BY Bug? Inconsistency?