Re: join/group/count query.

From: Ragnar <gnari(at)hive(dot)is>
To: Gary Stainburn <gary(dot)stainburn(at)ringways(dot)co(dot)uk>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: join/group/count query.
Date: 2006-12-20 11:09:56
Message-ID: 1166612996.6369.282.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On mið, 2006-12-20 at 10:12 +0000, Gary Stainburn wrote:
> Hi folks. I have the following query which works for me at the moment.
> However, o_model refers to a table stock_models which has one record for each
> model type. At the moment if I another record to the stock_models I have to
> amend the select. Is it possible to make this automatic by joining the
> stock_models data somehow?
>
> select o_p_id as key, o_p_id as p_id, p_name, count(o_p_id) as total,
> count (case when o_model = 5 then 1 else NULL end) as KA,
> count (case when o_model = 10 then 1 else NULL end) as Focus,
> count (case when o_model = 13 then 1 else NULL end) as C_Max,
> count (case when o_model = 16 then 1 else NULL end) as S_Max,
> count (case when o_model = 20 then 1 else NULL end) as Fiesta,
> count (case when o_model = 25 then 1 else NULL end) as Fusion,
> count (case when o_model = 30 then 1 else NULL end) as Mondeo,
> count (case when o_model = 35 then 1 else NULL end) as Galaxy,
> count (case when o_model = 40 then 1 else NULL end) as Ranger,
> count (case when o_model = 50 then 1 else NULL end) as Connect,
> count (case when o_model = 60 then 1 else NULL end) as Transit,
> count (case when o_model = 70 then 1 else NULL end) as Fiesta_Van
> from order_details
> where date_trunc('month',CURRENT_DATE) = date_trunc('month',o_ord_date)
> group by o_p_id, p_name;

if I understand correctly, you want one column in your output,
for each row in the table table stock_models

you can do this with the crosstabN function in the contrib
module 'tablefunc', or by making your own procedural language
function.

gnari

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Richard Ray 2006-12-20 14:10:53 Re: Help with quotes in plpgsql
Previous Message Gary Stainburn 2006-12-20 10:12:25 join/group/count query.