如何在plpgsql函数中返回结果集
敬业的IT人
互联网
佚名
2008-1-8 16:28:17
postgres的record类型只是一个虚拟的东西,它并没有实际的存储空间,因此结果集合的返回一定要依靠一种实在的表的结构,你或者在定义
函数时候返回一个表或者视图或者象下面的例子一样在调用函数的时候
后面跟着一个表的结构。
说明:表和视图创建成功以后在postgres的类型系统表中会自动增加
以他们的名字命名的类型),也就是说某个表和某个视图其实也是一
种数据类型。
create table mm(a int, b int);
insert into mm values(1,1);
insert into mm values(2,2);
insert into mm values(3,3);
create or replace function mmm() returns setof record as
'
declare
rec record;
begin
FOR rec IN SELECT * FROM mm LOOP
RETURN NEXT rec;
END LOOP;
return NULL;
end;'language 'oplsql';
select a.a,a.b from mmm() a(a int, b int);
a | b
---+---
1 | 1
2 | 2
3 | 3进入讨论组讨论。
- 最新文章
- PostgreSQL数据库学习手册之性能提升技巧[01-08]
- PostgreSQL数据库手册之libpq-C库之其他函数[01-08]
- ucLinux下sqlite数据库移植全攻略[01-08]
- JDBC概述[01-08]
- 提高C/S系统性能的一些方法[01-08]
- SAS数据仓库的体系结构[01-08]
- 相关文章
- PostgreSQL数据库学习手册之性能提升技巧[01-08]
- PostgreSQL数据库手册之libpq-C库之其他函数[01-08]
- ucLinux下sqlite数据库移植全攻略[01-08]
- PostgreSQL数据库的特点[01-08]
- PostgreSQL最常见问题(1)[01-08]
- PostgreSQL入门(1)[01-08]
