Re: select & group by - Mailing list pgsql-sql

From Ragnar Hafstað
Subject Re: select & group by
Date
Msg-id 1112611630.19933.6.camel@localhost.localdomain
Whole thread Raw
In response to select & group by  ("Michael L. Hostbaek" <mich@the-lab.org>)
Responses Re: select & group by
List pgsql-sql
On Mon, 2005-04-04 at 12:16 +0200, Michael L. Hostbaek wrote:
> I've got a problem selecting some specific data from my table. Imagine
> the following rows:
> 
> part    | mfg    | qty    | price    | eta    
> ---------------------------------------
> TEST1     ABC     10     100        (No ETA, as item is in stock)
> TEST1     ABC     12     120     04/04
> TEST2     CBA     17     10     05/05
> TEST2     CBA     10     20        (No ETA, as item is in stock)
>
> I'd like my selection to produce the following result:
> 
> part    | mfg    | qty    | qty incoming    | highest price    | eta
> -------------------------------------------------------------
> TEST1     ABC     10     12         120         04/04
> TEST2     CBA     10     17         20         05/05
> 
> Any clues on how to do this ? I kow the group by part, mfg, max(price) -
> but I do not know how to deal with the splitting up qty and stock qty
> and incoming qty.

use CASE. for example, something like:

select part,mfg,      sum(CASE WHEN eta is NULL then qty ELSE 0 END) as qty,      sum(CASE WHEN eta is NULL then 0 ELSE
qtyEND) as "qty incoming",      max(price) as "highest price",      min(eta) as eta
 
group by part,mfg;

gnari




pgsql-sql by date:

Previous
From: Richard Huxton
Date:
Subject: Re: select & group by
Next
From: Ragnar Hafstað
Date:
Subject: Re: select & group by