Victor Dobrovolsky <booby.stager@xxxxxxxxx> writes: > From that - "short and dirty translation" - point of view - should I prefer > to divide that > $$ > Select > case $1 > when '1'::numeric then tbl.p1 > when '2'::numeric then tbl.p2 > ... > end as cresult > $$ > expression into: > $$ > ... > if $1 = '1'::numeric then (query_1) > elsif when '2'::numeric then (query_2) > ... > end if; > ... > $$ Yeah, that would probably be a preferable approach if you're hoping for significantly different query plans for the two cases. PG does not have the sort of run-time plan choice mechanism that you're describing for Oracle. regards, tom lane