Обсуждение: is this possible in plpgsql ?

Поиск
Список
Период
Сортировка

is this possible in plpgsql ?

От
Marcin Winkler
Дата:
I have 1 function in pg 7.3.2.

txt string have 1,2,3,.. and i would like to be similar like if 3 in
(1,2,3..) then, but IF 3 in (''''||txt||'''') THEN doesn't work.
There is possible to this or not ?

CREATE OR REPLACE FUNCTION rek2(INT8) RETURNS text AS '
DECLARE       i                       INT8;
BEGIN       txt := '''';       for i in 1 .. 10 loop               txt := txt||i||'','';       END loop;       txt :=
txt||''0'';      IF 3 in (''''||txt||'''') THEN               raise notice ''yep'';       END IF;       RETURN txt; 
END;
' LANGUAGE 'plpgsql';

--
"Nieobecni nie mają racji"

Marcin Winkler


Re: is this possible in plpgsql ?

От
Richard Huxton
Дата:
On Thursday 19 Jun 2003 1:38 am, Marcin Winkler wrote:
> I have 1 function in pg 7.3.2.
>
> txt string have 1,2,3,.. and i would like to be similar like if 3 in
> (1,2,3..) then, but IF 3 in (''''||txt||'''') THEN doesn't work.
> There is possible to this or not ?

>         txt := '''';
>         for i in 1 .. 10 loop
>                 txt := txt||i||'','';
>         END loop;
>         txt := txt||''0'';
>         IF 3 in (''''||txt||'''') THEN
>                 raise notice ''yep'';

Try something like:
 query:=''SELECT 3 in ('' || txt || '')'' EXECUTE query;

Then check the result for true/false

--  Richard Huxton