Thread: Advice on how to build a query with partial sums

Advice on how to build a query with partial sums

From
JORGE MALDONADO
Date:
I need to build a query for the sample data below:

-----------------------------------------------------------------------    --------
fte_clave    fte_padre    fte_porc    fte_porc_aux         total
-----------------------------------------------------------------------    --------
1                  1                25              25                   50
2                  1                25               0                    50
3                  1                50              25                   50

4                  2                20               0                    40
5                  2                20              25                   40
6                  2                60              15                   40

7                  3                15              35                   60
8                  3                15               0                    60
9                  3                20               0                    60
10                3                50              25                   60
-----------------------------------------------------------------------    -------

The table contains only the first 4 fields and I want to build a query that gets such fields plus a fifth one (total) with the sum of "fte_porc_aux" for each "fte_padre".

I will very much appreciate your comments.

Re: Advice on how to build a query with partial sums

From
David Johnston
Date:
JORGE MALDONADO wrote
> I need to build a query for the sample data below:
>
> -----------------------------------------------------------------------
>  --------
> fte_clave    fte_padre    fte_porc    fte_porc_aux         total
> -----------------------------------------------------------------------
>  --------
> 1                  1                25              25
> 50
> 2                  1                25               0
> 50
> 3                  1                50              25
> 50
>
> 4                  2                20               0
> 40
> 5                  2                20              25
> 40
> 6                  2                60              15
> 40
>
> 7                  3                15              35
> 60
> 8                  3                15               0
> 60
> 9                  3                20               0
> 60
> 10                3                50              25                   60
> -----------------------------------------------------------------------
>  -------
>
> The table contains only the first 4 fields and I want to build a query
> that
> gets such fields plus a fifth one (total) with the sum of "fte_porc_aux"
> for each "fte_padre".
>
> I will very much appreciate your comments.

Look up the concept of "window functions" in the documentation.

Select sum(fte_porc_aux) over (partition by fte_padre) from ...

David J.





--
View this message in context:
http://postgresql.1045698.n5.nabble.com/Advice-on-how-to-build-a-query-with-partial-sums-tp5769216p5769226.html
Sent from the PostgreSQL - novice mailing list archive at Nabble.com.