this give an error. select name,ges_kw_zgb, SELECT round(100 * (ges_kw_zgb / (select sum(ges_kw_zgb) From energie.tennet_auswertung_2010)),2);
ERROR: syntax error at or near "SELECT" LINE 2: select name,ges_kw_zgb, SELECT round(100 * (ges_kw_zgb / (se... ________________________________ Von: salah jubeh <s_ju...@yahoo.com> An: Robert Buckley <robertdbuck...@yahoo.com>; "pgsql-general@postgresql.org" <pgsql-general@postgresql.org> Gesendet: 17:45 Montag, 3.September 2012 Betreff: Re: [GENERAL] Create loop in postgresql I am wondering why do not you write it like this select name,ges_kw_zgb, select round(100 * (ges_kw_zgb / (select sum(ges_kw_zgb) From energie.tennet_auswertung_2010)),2) ...... Regards ________________________________ From: Robert Buckley <robertdbuck...@yahoo.com> To: "pgsql-general@postgresql.org" <pgsql-general@postgresql.org> Sent: Monday, September 3, 2012 5:30 PM Subject: [GENERAL] Create loop in postgresql Hi, 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