order by a "select as" determined by case statement

Поиск
Список
Период
Сортировка
От FatTony
Тема order by a "select as" determined by case statement
Дата
Msg-id 000001c29d52$131f4250$1401a8c0@nemesis
обсуждение исходный текст
Ответы Re: order by a "select as" determined by case statement  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
Список pgsql-sql
I'm not a db guru by any means so please forgive me if this has an easy
solution.

Scenario:

Want to sort by an alias for SELECT AGE(). Problem is the timestamps for
the SELECT AGE will be determined by the value of another column, thus
the use of CASE.

What I thought would work.

SELECT tblticket.ticketid,tblstatus.statusname,
CASE WHEN tblstatus.statusname = 'Closed'
THEN (SELECT AGE(tblticket.ticketclosed,tblticket.ticketcreated) as
ticketage)
ELSE (SELECT AGE(CURRENT_TIMESTAMP,tblticket.ticketcreated) as
ticketage) 
END
FROM tblticket CROSS JOIN tblstatus
WHERE (tblticket.reasonid = 2) AND blah, blah, blah
ORDER BY ticketage ASC

CASE apparently completely ignores the ticketage alias. Anyone know how
to get around this?

Thank You.




В списке pgsql-sql по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: Rules/Trigges Trade-offs
Следующее
От: Stephan Szabo
Дата:
Сообщение: Re: order by a "select as" determined by case statement