Re: COUNT func

From: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
To: Oleg Lebedev <olebedev(at)waterford(dot)org>
Cc: Postgres SQL Mailing List <pgsql-sql(at)postgresql(dot)org>
Subject: Re: COUNT func
Date: 2001-10-18 22:39:22
Message-ID: Pine.BSF.4.21.0110181538210.28566-100000@megazone23.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql


On Thu, 18 Oct 2001, Oleg Lebedev wrote:

> Hi,
> I am trying to count the number or rows in a table with similar field
> values. I want to do it in one table scan.
> In other words, say I want to count the number of rows in Person table,
> having age equal to 40, and the number of rows with status as 'married'.
> I want Person table to be scanned only once during this query.
> So, basically I want to do the following:
> SELECT COUNT(age=40), COUNT(status='married')
> FROM Person;
>
> I tried to use aggregate functions with group by and having clauses, but
> I still can't figure it out (probably because of the lack of
> experience).

Maybe something like [untested]
SELECT SUM(case when age=40 then 1 else 0 end),
SUM(case when status='married' then 1 else 0 end)
FROM PERSON;
will work?

In response to

  • COUNT func at 2001-10-18 19:37:17 from Oleg Lebedev

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Oleg Lebedev 2001-10-18 23:04:25 Re: COUNT func
Previous Message Josh Berkus 2001-10-18 22:09:54 Re: Doing a regexp-based search/replace?