Функция

Ребят, поправьте запрос, плиз - нужно получить поиск текста в строке: iLike '%текст%', но что-то у меня с кавычками, при создании функции, не срастается :)

CREATE OR REPLACE FUNCTION note.q3(text)
RETURNS bigint AS
'select DISTINCT reg_n from note.note_doc where soderganie ilike $1'
LANGUAGE sql VOLATILE
COST 100;
ALTER FUNCTION note.q3(text)

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

CREATE OR REPLACE FUNCTION

CREATE OR REPLACE FUNCTION foo(text)
RETURNS bigint AS
$$
SELECT DISTINCT 1::bigint WHERE 'bla' ilike '%' || $1 || '%'
$$
    LANGUAGE SQL;

Спасибо, Дружище...

Но не работает.
Поковырялся ещё немного, выяснилось, что строку 'select DISTINCT reg_n from note.note_doc where soderganie ilike $1' менять не нужно. Переменная $1, оказывается, спокойно передает % и кавычки ей не нужны - функция в курсе, что это текст, т.е. запрос SELECT note.q3('%хз%'); вполне себе нормально выполняется.

Может поможет ещё кому, кто как я, в первый раз в функции влез :)

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023