I
am trying to loop through the records in a table and
update a column. I can do this with a case statement
but I would like to simplify this to a simple loop
statement. I can´t seem to work out how to do it
though.
Here
is the case statement.
select
name,ges_kw_zgb,
case
When
name='Bad Harzburg' then (select round(100 *
(ges_kw_zgb / (select sum(ges_kw_zgb) From
energie.tennet_auswertung_2010)),2))
When
name='Braunlage' then (select round(100 *
(ges_kw_zgb / (select sum(ges_kw_zgb) From
energie.tennet_auswertung_2010)),2))
When
name='Braunschweig' then (select round(100 *
(ges_kw_zgb / (select sum(ges_kw_zgb) From
energie.tennet_auswertung_2010)),2))
When
name='Büddenstedt' then (select round(100 *
(ges_kw_zgb / (select sum(ges_kw_zgb) From
energie.tennet_auswertung_2010)),2))
End
as z
from
energie.tennet_auswertung_2010
;
Instead of having to
write the name variable in the function, I
would just like to iterate through each record
and execute the select round(100 *
(ges_kw_zgb / (select sum(ges_kw_zgb) From
energie.tennet_auswertung_2010)),2) command.
If anyone can
help I´d me grateful,
cheers,
Rob