oracle table函数
PL/SQL表---table()函数用法
/*
PL/SQL表---table()函数用法:
利用table()函数,我们可以将PL/SQL返回的结果集代替table。
oracle内存表在查询和报表的时候用的比较多,它的速度相对物理表要快几十倍。
simpleexample:
1、table()结合数组:
*/
createorreplacetypet_testasobject(
idinteger,
rqdate,
mcvarchar2(60)
);
createorreplacetypet_test_tableastableoft_test;
createorreplacefunctionf_test_array(ninnumberdefaultnull)returnt_test_table
as
v_testt_test_table:=t_test_table();
begin
foriin1..nvl(n,100)loop
v_test.extend();
v_test(v_test.count):=t_test(i,sysdate,'mc'||i);
endloop;
returnv_test;
endf_test_array;
/
select*fromtable(f_test_array(10));
select*fromthe(selectf_test_array(10)fromdual);
/*
2、table()结合PIPELINED函数:
*/
createorreplacefunctionf_test_pipe(ninnumberdefaultnull)returnt_test_tablePIPELINED
as
v_testt_test_table:=t_test_table();
begin
foriin1..nvl(n,100)loop
piperow(t_test(i,sysdate,'mc'||i));
endloop;
return;
endf_test_pipe;
/
select*fromtable(f_test_pipe(20));
select*fromthe(selectf_test_pipe(20)fromdual);
/*
3、table()结合系统包:
*/
createtabletest(idvarchar2(20));
insertintotestvalues('1');
commit;
explainplanforselect*fromtest;
select*fromtable(dbms_xplan.display);
相关推荐
表格的现在还是较为常用的一种标签,但不是用来布局,常见处理、显示表格式数据。在HTML网页中,要想创建表格,就需要使用表格相关的标签。<table> <tr> <td>单元格内的文字</td> ...