Re: Using null or not null in function arguments

Поиск
Список
Период
Сортировка
От Igor Katson
Тема Re: Using null or not null in function arguments
Дата
Msg-id 4979B8FF.9000803@gmail.com
обсуждение исходный текст
Ответ на Re: Using null or not null in function arguments  (Raymond O'Donnell <rod@iol.ie>)
Список pgsql-general
Raymond O'Donnell wrote:
> On 23/01/2009 11:16, Igor Katson wrote:
>
>
>> How do I write a function without complex logic, which will do:
>> a) If the input argument is NULL, then the corresponding select
>> statement will change from
>>
>> column = arg
>> to
>> column IS NULL
>>
>
> You could build your statement dynamically as a string, then execute it
> using EXECUTE:
>
> http://www.postgresql.org/docs/8.3/static/plpgsql-statements.html#PLPGSQL-STATEMENTS-EXECUTING-DYN
>
>
>
>> b) If the input argument is NULL, then the corresponding select
>> statement will be removed, so if it was not written.
>>
>
> Likewise - something like
>
>   if i_city_id is null then
>     ... build statement...
>     ... execute statement ...
>   end if;
>
> HTH,
>
> Ray.
>
Thanks, Ray, but I see now, that I didn't explain the exact problem
correctly. The one is, that this kind of functions (search ones) can
have tens of arguments, and the more the amount of arguments is, the
more combinations of IF ... THEN conditionals will be present to build
the logic. If I have a couple of them, this can be easily handled
through IF THEN, or dynamic statements, but what if I have tens of 'em?

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

Предыдущее
От: Howard Cole
Дата:
Сообщение: How to convert ByteA to Large Objects
Следующее
От: "Francisco Figueiredo Jr."
Дата:
Сообщение: Re: How to convert ByteA to Large Objects