今天在網上看到了oracle cast的一個用法,做一記錄
【轉自:http://hi.baidu.com/wenwenxiaoxing/blog/item/419cd6ca91b01e43f21fe794.html】
今天在網上看了split函式及測試方法。split函式我以前就有了,但在測試此函式的方法中看到了cast,這個函式我從未用過。
CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2 (4000); /
CREATE OR REPLACE FUNCTION fn_split (p_str IN VARCHAR2, p_delimiter IN VARCHAR2)
RETURN ty_str_split
IS
j INT := 0;
i INT := 1;
len INT := 0;
len1 INT := 0;
str VARCHAR2 (4000);
str_split ty_str_split := ty_str_split ();
BEGIN
len := LENGTH (p_str);
len1 := LENGTH (p_delimiter);
WHILE j < len
LOOP
j := INSTR (p_str, p_delimiter, i);
IF j = 0
THEN
j := len;
str := SUBSTR (p_str, i);
str_split.EXTEND;
str_split (str_split.COUNT) := str;
IF i >= len
THEN
EXIT;
END IF;
ELSE
str := SUBSTR (p_str, i, j - i);
i := j + len1;
str_split.EXTEND;
str_split (str_split.COUNT) := str;
END IF;
END LOOP;
RETURN str_split;
END fn_split;
/
--測試方法
DECLARE
CURSOR c
IS
SELECT *
FROM TABLE (CAST (fn_split ('123,,d', ',') AS ty_str_split
)
);
r c%ROWTYPE;
i integer :=0;
BEGIN
OPEN c;
LOOP
FETCH c INTO r;
EXIT WHEN c%NOTFOUND;
DBMS_OUTPUT.put_line (r.column_value);
i := i+1;
END LOOP;
CLOSE c;
DBMS_OUTPUT.put_line (i);
END;
/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15247/viewspace-1008034/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle cast 用法OracleAST
- Oracle的Cast的用法OracleAST
- 這個週末上線一個幫朋友做的網站,遇到挺多坑,記錄一下網站
- 記錄一個Oracle引數Oracle
- 記錄如何用php做一個網站訪問計數器的方法PHP網站
- 抓取某一個網站整站的記錄網站
- 記錄的一些Retrofit的小用法
- 今天在github上發現一個go語言初學的文件GithubGo
- 一些做題記錄
- 記錄一種自定義標籤的用法
- 如何做一個流暢的UI 組內分享記錄UI
- 做一個TableView 的iOS App的筆記(一)ViewiOSAPP筆記
- 一個新上線資料庫的調優記錄資料庫
- 記錄一個sqlSQL
- [新手開發記錄] 新建一個網站網站
- const_cast的用法AST
- 我在 GitHub 上看到了一個喪心病狂的開源專案!Github
- 記錄一個開源專案排名網站網站
- 做一個網站多少錢?網站
- cast函式的用法案例AST函式
- Oracle 一些命令記錄Oracle
- 使用一session能否記錄一個集合???Session
- 記錄下學習釋出一個包到npm上NPM
- 用DataList來做一個仿噹噹網上書店的小應用
- 用網上的API做一些有趣的事API
- django學習記錄--第一個網頁“hello django”Django網頁
- 記錄一個前端架構的想法前端架構
- 記錄一個防止DDL的指令碼指令碼
- 記錄一個批次貼數的vba
- 記錄一個行列轉換
- 記錄一個小問題
- 即將新建一個報表功能點……記錄個Oracle函式Oracle函式
- C++ 中dynamic_cast<>的用法C++AST
- 參加oracle培訓的一點記錄Oracle
- 讓一個網站從上線到有排名,必須做的十四件事.網站
- 2024.4 第一週做題記錄
- 取得某個id的上一個id和下一個id的oracle sqlOracleSQL
- 一次遷移思考的記錄--bulk_collect的limit用法MIT