我是plpgsql的新手,我正在练习游标。
我有下面的简单代码,
create or replace function func_cursor_2()
returns setof numeric as $$
declare
cursor1 CURSOR for select empno,ename, job from emp;
r record;
begin
open cursor1;
loop
fetch from cursor1 into r;
exit when not found;
return next r.empno;
end loop;
close cursor1;
end;
$$ language plpgsql;
select func_cursor_2()
用fetch from cursor1 into r
,
1.在我看来,我是在逐个获取结果行吗?
1.有没有办法为从游标的一次读取指定100行?
1条答案
按热度按时间mklgxw1f1#
为什么要用游标呢?这可以在一条语句中完成。
但是,上面的代码不会返回一致的结果。要生成一致的结果,您需要添加
order by empno
或offset,具体取决于您的具体需要。注:未测试。