Re: right way of using case-expressions in plpgsql functions

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: right way of using case-expressions in plpgsql functions
Дата
Msg-id 2124262.1697404541@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: right way of using case-expressions in plpgsql functions  (Victor Dobrovolsky <booby.stager@gmail.com>)
Ответы Re: right way of using case-expressions in plpgsql functions
Список pgsql-general
Victor Dobrovolsky <booby.stager@gmail.com> 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



В списке pgsql-general по дате отправления:

Предыдущее
От: Ron
Дата:
Сообщение: Re: right way of using case-expressions in plpgsql functions
Следующее
От: Victor Dobrovolsky
Дата:
Сообщение: Re: right way of using case-expressions in plpgsql functions