Re: Making NULL entries appear first when ORDER BY <field> ASC

From: Thomas F(dot)O'Connell <tfo(at)sitening(dot)com>
To: PgSQL - SQL <pgsql-sql(at)postgresql(dot)org>
Cc: Bruno Wolff III <bruno(at)wolff(dot)to>
Subject: Re: Making NULL entries appear first when ORDER BY <field> ASC
Date: 2005-02-23 19:54:50
Message-ID: b27f2f6549c676ab0afe3b615e905230@sitening.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

How would one know from the reference material that it is possible to
include IS NOT NULL in an ORDER BY clause?

Similarly, other than the FAQ, I've never been able to tell from the
SELECT documentation why ORDER BY random() works.

-tfo

--
Thomas F. O'Connell
Co-Founder, Information Architect
Sitening, LLC
http://www.sitening.com/
110 30th Avenue North, Suite 6
Nashville, TN 37203-6320
615-260-0005

On Feb 16, 2005, at 3:39 AM, Andreas Joseph Krogh wrote:

> On Wednesday 16 February 2005 04:47, Bruno Wolff III wrote:
>>> Now, as you see, touples with NULL in the "start_time"-field appear
>>> "after" the others. I would like to make all entries where
>>> start_time IS
>>> NULL apear *before* all the others. Any idea how to achieve this?
>>
>> SELECT start_date, start_time, end_time, title
>> FROM onp_crm_activity_log
>> WHERE start_date IS NOT NULL
>> ORDER BY start_date ASC, start_time IS NOT NULL ASC, start_time ASC;
>>
>> This assumes you want the NULL start times first within a particular
>> date. Otherwise change the order in the ORDER BY clause.
>
> Thanks! This si, IMO, the cleanest solution as it doesn't involve any
> COALESCE.

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Ken Johanson 2005-02-23 20:12:39 Re: Making NULL entries appear first when ORDER BY <field>
Previous Message Bruno Wolff III 2005-02-23 19:44:12 Re: VIEW / ORDER BY + UNION