From: | "Uwe C(dot) Schroeder" <uwe(at)oss4u(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Cc: | Lew <lew(at)lewscanon(dot)nospam> |
Subject: | Re: CASE in ORDER BY clause |
Date: | 2007-07-09 22:00:52 |
Message-ID: | 200707091500.52452.uwe@oss4u.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Saturday 07 July 2007, Lew wrote:
> So if your RDBMS sorts NULLs after all other values, then from
>
> >> 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;
>
> all rows with start_date > CURRENT_DATE will appear first, in start_date
> descending order,
> then all rows with start_date <= CURRENT_DATE will appear, in start_date
> ascending order.
>
> Is CURRENT_DATE evaluated once for the query or twice for each row?
CURRENT_DATE is evaluated once per transaction. If you run in autocommit -
mode, then the single query is wrapped in a transaction by itself.
Either way it's never evaluated per occurrence.
Uwe
--
Open Source Solutions 4U, LLC 1618 Kelly St
Phone: +1 707 568 3056 Santa Rosa, CA 95401
Cell: +1 650 302 2405 United States
Fax: +1 707 568 6416
From | Date | Subject | |
---|---|---|---|
Next Message | George Pavlov | 2007-07-09 23:59:45 | Re: dropdb ; createdb equivalent without createdb permission? |
Previous Message | CG | 2007-07-09 21:40:56 | Re: xpath_* namespace bug |