I have equations stored in strings and I would need to evaluate them in pgsql - get the result. Maybe there is an eval() function but I couldn't find it. The only way I found was to use something like this: calcstring_arg:= 'SELECT ' || calcstring_arg || ' ::numeric AS outparam'; FOR tmp IN EXECUTE calcstring_arg LOOP END LOOP; RETURN tmp.outparam; However I have a problem with this cast. I don't know how to handle brackets in the equation, since SELECT 35/124 ::numeric --0.28.... while SELECT (35/124) ::numeric -- 0 so I should do something like SELECT (35::numeric/124::numeric) --0.28.... But than I would need to start to look inside the string and do manipulation to it that I would like to avoid. How could I evaluate these strings independently from whether there are brackets in them or not? Thanks for the help. Balázs