一個簡單的oracle函式返回陣列的例子
create or replace type t_ret_table is table of varchar2(20);
create or replace function f_test(var_num in integer) return t_ret_table is
var_out t_ret_table;
begin
var_out := t_ret_table();
var_out.extend(var_num);
for i in 1..var_num loop
var_out(i) := i;
end loop;
return var_out;
end f_test;
/
set serverout on
declare
aa t_ret_table;
begin
aa := f_test(10);
for i in 1..aa.count loop
dbms_output.put_line(aa(i));
end loop;
end;
/
一個分隔字串的例子:
把'a|||b|||c'字串分隔成
a
b
c
create or replace function f_test(var_str in string) return t_ret_table is
var_out t_ret_table;
var_tmp varchar2(2000);
var_element varchar2(2000);
begin
var_tmp := var_str;
var_out := t_ret_table();
while instr(var_tmp,'|||')>0 loop
var_element := substr(var_tmp,1,instr(var_str,'|||')-1);
var_tmp := substr(var_tmp,instr(var_str,'|||')+3,length(var_tmp));
var_out.extend(1);
var_out(var_out.count) := var_element;
end loop;
var_out.extend(1);
var_out(var_out.count) := var_tmp;
return var_out;
end f_test;
/
set serverout on
declare
aa t_ret_table;
begin
aa := f_test('a|||b|||c');
for i in 1..aa.count loop
dbms_output.put_line(aa(i));
end loop;
end;
/
create or replace function f_test(var_str in string) return t_ret_table PIPELINED
as
var_tmp varchar2(2000);
var_element varchar2(2000);
begin
var_tmp := var_str;
while instr(var_tmp,'|||')>0 loop
var_element := substr(var_tmp,1,instr(var_str,'|||')-1);
var_tmp := substr(var_tmp,instr(var_str,'|||')+3,length(var_tmp));
pipe row(var_element);
end loop;
pipe row(var_tmp);
return;
end f_test;
/
select * from table(f_test('a|||b|||c'));
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18921899/viewspace-1017657/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 一個簡單的「IOC」例子
- 陣列排序函式-php陣列函式(一)陣列排序函式PHP
- 擼一個簡單的MVVM例子MVVM
- python List,它不是一個簡單的陣列Python陣列
- 將使用回撥函式作為引數的函式改造為返回 Promise 的一個具體例子函式Promise
- onethink中 list_to_tree 函式 是如何返回陣列的函式陣列
- 一個簡單的netty通訊的例子Netty
- 一個最簡單的 Github workflow 例子Github
- 簡單探討sum()函式返回null的問題函式Null
- 封裝一個簡單的動畫函式封裝動畫函式
- 一個簡單的生活例子,感受TRIZ的魅力!
- WebRTC:一個視訊聊天的簡單例子Web單例
- 陣列的七個 API 的簡單實現陣列API
- 記錄個Java/Groovy的小問題:空字串呼叫split函式返回非空陣列Java字串函式陣列
- 一個簡單的例子瞭解async跟defer
- 一個簡單的例子教會您使用javapJava
- 【陣列】1550. 存在連續三個奇數的陣列(簡單)陣列
- 寫一個函式找出給定陣列中的最大差值函式陣列
- 總結一些常用的陣列函式陣列函式
- Solidity中函式返回值,靜態動態陣列Solid函式陣列
- PHP陣列函式的時間複雜度清單PHP陣列函式時間複雜度
- 編寫一個函式,實現兩個整型陣列的合併(將兩個整型陣列a和b合併成一個從小到大有序排列的整形陣列c,並在主函式中測試)。函式陣列
- JUnit概述及一個簡單例子單例
- 簡單介紹Lua一維陣列與多維陣列的使用陣列
- 【陣列】1608. 特殊陣列的特徵值(簡單)陣列特徵
- 返回陣列中的最大元素個數陣列
- JS陣列at函式(獲取最後一個元素的方法)介紹JS陣列函式
- 編譯通過的 foo函式返回一個int編譯函式
- javascript學習筆記--函式的返回值可以是一個函式JavaScript筆記函式
- 基礎!使用map返回一個新的陣列要注意哦陣列
- 前端面試題,寫出一個快速找出兩個陣列不同值的函式。前端面試題陣列函式
- Unity如何連線伺服器: 一個簡單的例子Unity伺服器
- 幾個簡單又實用的PHP函式PHP函式
- 【陣列】1394. 找出陣列中的幸運數(簡單)陣列
- spring 簡單的使用 Hikari連線池 和 jdbc連線mysql 的一個簡單例子SpringJDBCMySql單例
- 陣列展平函式陣列函式
- PHP 陣列函式妙用PHP陣列函式
- 巧用 PHP 陣列函式PHP陣列函式
- 陣列處理函式陣列函式