我正在尝试创建一个函数,在其中一个表字段中搜索字符串,然后返回一个新的用户表。基本上,在一张桌子内,我有
create table fooSearchTable (
id integer, -- PG: serial
name LongName unique not null,
queryDef LongString not null,
primary key (id)
);
wherequeryDef
是一个字符串,其中包含要执行的另一个查询。例如,一行可能是
1 | resultName | select * from users where users.id = '4'
我得到了这个函数格式来开始这个函数
create or replace function searchUsers(_searchName text) returns table (userID integer) as $$
begin
end;
$$ language plpgsql stable;
我需要运行 SQL 查询来找到_searchName
匹配的行
select queryDef from fooSearchTable f
where f.name = _searchName;
这将返回字符串,但我不知道如何在函数中执行此字符串,因此我可以获得用户 ID 表。任何帮助,将不胜感激。