From: | Vik Fearing <vik(dot)fearing(at)dalibo(dot)com> |
---|---|
To: | Gerald Cheves <gcheves(at)verizon(dot)net>, pgsql-novice(at)postgresql(dot)org |
Subject: | Re: aggregate functions in "SELECT" |
Date: | 2013-12-03 22:08:01 |
Message-ID: | 529E5641.2060309@dalibo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
On 12/03/2013 10:44 PM, Gerald Cheves wrote:
> Dear Colleagues,
>
> How can I use the COUNT variable and the COL_YES variable to calculate
> a percentage COL_YES/COUNT*100?
>
> This operation isn't allowed in the "SELECT" statement.
You'll need to use a superquery. See below.
> Select g.STATE,
> g.COMPANY,
> g.MODEL,
> count(g.MODEL) as COUNT,
> coalesce(sum(case when COLORS = 'Yes' then 1 else 0 end),0) as
> COL_YES
> from gentech_12_13 as g
> where MODEL = '0387' and COMPANY = 'ACME'
> group by g.STATE, g.COMPANY, g.MODEL
> ;
>
SELECT state, company, model, count, col_yes, 100.0*col_yes/count
FROM (
Select g.STATE,
g.COMPANY,
g.MODEL,
count(g.MODEL) as COUNT,
coalesce(sum(case when COLORS = 'Yes' then 1 else 0 end),0)
as COL_YES
from gentech_12_13 as g
where MODEL = '0387' and COMPANY = 'ACME'
group by g.STATE, g.COMPANY, g.MODEL
) q;
--
Vik
From | Date | Subject | |
---|---|---|---|
Next Message | Gerald Cheves | 2013-12-03 22:54:18 | Re: aggregate functions in "SELECT" |
Previous Message | Gerald Cheves | 2013-12-03 21:44:07 | aggregate functions in "SELECT" |