我有一个PL / SQL VArray,我正在填写像这样的BULK COLLECT查询:
SELECT id
BULK COLLECT INTO myarray
FROM aTable
现在我想将这个集合的一部分传递给另一个集合,如下所示:
newarray := myarray(2..5)
这应该将元素2,3,4和5从myarray传递给newarray。
我可以写一个循环并复制元素,但是有更简洁的方法吗?
答案 0 :(得分:3)
通常,您不希望这样做。你在内存中有一个大集合,现在你想要复制它。这甚至会使用更多内存。通常在这种情况下,你传递整个集合(通过引用,而不是值),并提供开始和停止索引。将其留给其他函数只处理指定的范围。