2
plpython函数如何将结果集作为普通的sql查询结果集(而不是文本)返回。如何使用PostgreSQL中的Plpython3返回结果集
这里是函数定义 -
DROP FUNCTION IF EXISTS demo_report();
CREATE OR REPLACE FUNCTION demo_report()
RETURNS SETOF <what-type>
AS $$
rv = plpy.execute("SELECT * FROM test")
return rv
$$ LANGUAGE plpython3u;
当我执行选择demo_report();应该在结果集返回到客户端,而不是现在text.Right我得到这个文本 -
我使用的Postgres 9.2与Windows plpython3u。
基本上我是返回类型作为表名称。这工作如果我使用查询SELECT * FROM测试;在plpython代码中。如果我确实选择了ID,则从测试中得到名称;它打破了。仍然需要找到一种解决方法,而不需要定义新的类型。 – 2013-05-04 17:21:32
您可以创建一个TYPE而不是一个表。 https://stackoverflow.com/a/38315231/487992 – JohnMudd 2017-07-19 21:18:49