我目前在oracle 11.2。下面是代码片段。我想从每个传递的页码中的记录类型中提取元素范围。 而不是在查询本身,我想从表类型中提取。从plsql提取元素范围关联数组
假设收集从1 to 5
page =2 -> 6 to 10
page =3 -> 11 to 13
我不想把页面逻辑在SELECT语句中充满了13条记录
page
与1
通过应该给元素。 我没有得到正确的输出,当我通过page 2
和病房。 我现在没有确切的代码,但是当我明天早上去办公室时,我会更新循环内的正确代码。
create or replace procedure p1 (page number) is
TYPE rec_typ IS RECORD (col1 VARCHAR2(5),col2 VARCHAR2(50),col3
number(10));
TYPE rec_tab IS TABLE OF rec_typ INDEX BY BINARY_INTEGER;
t_tab rec_tab ;
f_tab rec_tab ;
n number :=0;
BEGIN
Select * bulk collect into t_tab from test;
For j in p1*5-4..p1*5
LOOP
if t_tab.exists(j) then
n:= n+1;
f_tab.extend;
f_tab(n) :=t_tab(j);
end if;
END LOOP;
END;
非常感谢你..对不起,我迟到reply.I完全忘了LIMIT clause.I认为会从这里 –
其OKY ...拉吉接管有个GRT一天......如果对你有帮助,点击这个答案左边的有用的提示按钮。 –