conditional aggregates - Mailing list pgsql-sql

From Marcin Krawczyk
Subject conditional aggregates
Date
Msg-id AANLkTinG4=xMPmwoYHpPtt9RqtMABt=pvjYCGRniKzBx@mail.gmail.com
Whole thread Raw
Responses Re: conditional aggregates
List pgsql-sql
Hi list,

Can anyone advise me on creating an aggregate that would take additional parameter as a condition ? For example, say I have a table like this

id;value
1;45
2;13
3;0
4;90

I'd like to do something like this

SELECT min_some_cond_aggregate(value,0) FROM table

to get the minimal value from table greater than 0, in this case 13. 

I can't do SELECT min(value) FROM table WHERE value > 0 as this will mess my other computations. My current solution involves a function operating on the output of array_accum from the docs, but I'm looking for more elegant solution.

Is this possible at all ? I'm running 8.1.


regards
mk

pgsql-sql by date:

Previous
From: -
Date:
Subject: mybatis 3 RETURNING id problem with insert.
Next
From: Pavel Stehule
Date:
Subject: Re: conditional aggregates