I need to calculate percentages of various dimensions in a table. I\'d like to simplify things by using window functions to calculate the denominator, however I am having an iss
Do you need to do it all with window functions? Sounds like you just need to group the result you have by d1
and d2
and then sum the sums:
select d1, d2, sum(p)
from (
select d1, d2, v/sum(v) over (partition by d1) as p
from test
) as dt
group by d1, d2
That gives me this:
d1 | d2 | sum
----+----+------------------------
a | x | 0.25000000000000000000
a | y | 0.75000000000000000000
b | x | 1.00000000000000000000