【发布时间】:2012-12-20 03:36:45
【问题描述】:
如何将select * from customers 之类的简单选择查询转换为 pg 中的存储过程/函数?
我是 Postgres 的新手,create function customers() as returns table/setof 只是感觉不对,因此这里有问题。
我知道 proc 在 pg 领域被称为“函数”。因此 不存在,我唯一的选择是创建视图或函数。问题是create procedurecreate function x() returns setof y 返回一个以逗号分隔的值行,如果没有进一步处理就无法使用(至少这是我在 pgAdmin 和 Ruby/Sequel 中看到的)。
create function x() returns table(...) 要求我嵌入我不想嵌入的行定义。
我确信这一切背后都有一个原因,但我很惊讶最常见的用例就是这么棘手。
【问题讨论】:
-
@rebnoob 而不是“不起作用” - 指定您尝试的函数的全文和产生的错误消息以及您的 PostgreSQL 版本。
-
太棒了!谢谢欧文和克雷格。
-
那么这个问题的答案是否正确?
标签: postgresql function stored-procedures types