Hmm, no-one seemed to mention the obvious - a pl/pgsql function, either
triggered or run manually depending if you want to update on insert/update
or on demand.


On 7 August 2011 16:05, Sim Zacks <s...@compulab.co.il> wrote:

> **
> On 08/05/2011 07:32 PM, jeffrey wrote:
>
> I have a table that looks like this:
>
> homeid    city          date     measurement      pre/post
> 123   san francisco  1/2/2003     1458             pre
> 123   san francisco  NULL          1932             post
> 124   los angeles    2/4/2005      938               pre
> 124   NULL            NULL           266               pre
> 124   los angeles    7/4/2006      777               post
>
> I'd like to write a query so that I get the following result:
>
> homeid    city          date     measurement      pre/post
> 123   san francisco  1/2/2003     1458             pre
> 123   san francisco  1/2/2003      1932            post
> 124   los angeles    2/4/2005      938               pre
> 124   los angeles    2/4/2005       266              pre
> 124   los angeles    7/4/2006      777               post
>
> If a city or date is null, then it will fill from other not null
> values with the same homeid.  If given the choice, it will
> preferentially fill from a row where homeid AND pre/post match.  But
> if that doesn't match, then it will still fill from the same homeid.
>
> Does anyone have ideas for this?
>
> Thanks,
> Jeff
>
>

Reply via email to