Re: multiple counts using CASE

Поиск
Список
Период
Сортировка
От Johnson, Shaunn
Тема Re: multiple counts using CASE
Дата
Msg-id 73309C2FDD95D11192E60008C7B1D5BB0452E0F6@snt452.corp.bcbsm.com
обсуждение исходный текст
Ответ на multiple counts using CASE  ("Johnson, Shaunn" <SJohnson6@bcbsm.com>)
Список pgsql-general

--Thanks Tom!

--That's just what I needed!

-X

-----Original Message-----
From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
Sent: Tuesday, March 19, 2002 10:19 AM

> Wonder if it is possible to get multiple counts
> from ONE query using the CASE statement.

If I'm understanding you correctly, you can't do what you want with
a single aggregate function call, because that will only give you
one result.

Consider something like

select
        sum(case when logic = '1' then 1 else 0 end),
        sum(case when logic = '2' then 1 else 0 end),
        sum(case when logic = '3' then 1 else 0 end)
from ...

I also wonder whether you aren't reinventing the notion of GROUP BY.
F'r instance

select logic, count(*) from ... group by logic;

                        regards, tom lane

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

Предыдущее
От: Carsten Zerbst
Дата:
Сообщение: Reference pg_user ?
Следующее
От: "Oberpriller, Wade D."
Дата:
Сообщение: Visual display tool?