GreenPlum/PostgreSQL 创建函数返回数据集
Posted DATA数据猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GreenPlum/PostgreSQL 创建函数返回数据集相关的知识,希望对你有一定的参考价值。
GreenPlum/PostgreSQL 创建函数返回数据集
一、创建表
create table dataset(
id int,
name varchar(25)
);
insert into dataset values(1,'A'),(2,'B'),(3,'C'),(4,'D');
二、创建函数 setof 表名
2.1 查询并返回指定表数据
create or replace function get_dataset()
returns setof dataset
language plpgsql
as $function$
begin
return query select * from dataset;
end;
$function$
;
2.2 执行函数,返回结果
select get_dataset()
2.3 对函数执行结果进行条件判断并过滤
select * from get_dataset() where id = 1;
三、创建函数 setof record
3.1 在执行函数时,通过输入表名称,查看表中数据,并依次返回每条表记录。
create or replace function get_datarows(in tablename text)
returns setof record
language plpgsql
as $function$
declare rec record;
begin
for rec in EXECUTE 'select * from ' || tablename
loop
return next rec;
end loop;
return;
end;
$function$
;
3.2 执行函数时,需要指定表类型
select * from get_datarows('dataset') as dataset(id int,name varchar(25));
以上是关于GreenPlum/PostgreSQL 创建函数返回数据集的主要内容,如果未能解决你的问题,请参考以下文章
Greenplum(PostgreSql)中函数内游标的使用实例
在 Greenplum/Postgresql 数据库上使用 java 驱动程序创建序列不起作用
无法从 Windows 上的 pgadmin 连接到 greenplum postgresql