【发布时间】:2015-02-25 20:24:49
【问题描述】:
想象一下声明一个 pl/sql 游标。通常你会打开它,获取记录,最后 ROWCOUNT 会告诉你检索到的记录数。但是有没有办法只有在声明游标时才能获得这个数量的记录?还是我总是必须通过所有记录才能达到我的目标?
我问是因为我需要这样的东西:遍历游标并获取一条又一条记录,但从一开始我就必须知道它将完整检索多少记录。这应该回答如下问题:现在我正在处理 5 条记录中的第 1 条记录。我已经通过使用 SELECT COUNT(*) INTO 解决了这个问题(使用相同的 SELECT 子句构建游标)并且它可以工作但是没有更好的方法吗?任何帮助将不胜感激:)
【问题讨论】:
-
想象一下你有一个装有弹珠的不透明袋子。您想从袋子中取出所有或红色弹珠,但在取出之前您想知道有多少红色弹珠。你将如何解决这个问题?当你能做到这一点时,你就可以解决在获取结果之前知道游标将返回多少行的问题。