Postgres游标中的获取限制
Fetch limit in Postgres cursor
当我们在游标上获取时,Postgres 中是否有与 Oracle LIMIT
子句内联的选项?
我使用的游标可能包含数百万行,这会降低游标性能。
我们是否可以选择限制每次提取的行数并分批完成提取?
是的,这就是游标默认执行的操作:
BEGIN; -- start a transaction
PREPARE c CURSOR FOR SELECT ...
FETCH 1000 FROM c;
FETCH 1000 FROM c;
...
COMMIT;
游标不会“保存”数据,它会在您 运行 FETCH
.
时从 table 中获取数据
当我们在游标上获取时,Postgres 中是否有与 Oracle LIMIT
子句内联的选项?
我使用的游标可能包含数百万行,这会降低游标性能。
我们是否可以选择限制每次提取的行数并分批完成提取?
是的,这就是游标默认执行的操作:
BEGIN; -- start a transaction
PREPARE c CURSOR FOR SELECT ...
FETCH 1000 FROM c;
FETCH 1000 FROM c;
...
COMMIT;
游标不会“保存”数据,它会在您 运行 FETCH
.