小编use*_*666的帖子

将SELECT结果作为参数传递给postgreSQL函数

我有一个表"UserState",其中包含以下字段:id,userid,ctime,state,endtime.我有一个简单的查询:

SELECT userid FROM "UserState" WHERE ctime>'2014-07-14'::timestamp
Run Code Online (Sandbox Code Playgroud)

我有一个plpgsql函数,它必须将此查询的结果作为参数:

get_timeinstate(SELECT userid FROM "UserState" WHERE ctime>'2014-07-14'::timestamp);
Run Code Online (Sandbox Code Playgroud)

如何正确创建函数以将查询结果作为参数传递给那里?有必要理解,该函数返回另一个SQL结果,我需要在那里使用"IN"条件:

$func$
BEGIN
 RETURN QUERY
 SELECT 
...myanotherquery...
 WHERE "UserState".userid IN (HERE I NEED TO INSERT MY QUERY RESULT)
END;
$func$
Run Code Online (Sandbox Code Playgroud)

postgresql plpgsql

13
推荐指数
2
解决办法
1万
查看次数

标签 统计

plpgsql ×1

postgresql ×1