當前位置:首頁 » 存儲配置 » oracle存儲過程split

oracle存儲過程split

發布時間: 2023-09-14 04:01:47

『壹』 oracle 如何用sql實現split功能

本函數可以將「目標字元串」以「指定字元串」進行拆分,並通過表結構返回結果。代碼如下:

CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000);
CREATE OR REPLACE FUNCTION splitstr(p_string IN VARCHAR2, p_delimiter IN VARCHAR2)
RETURN str_split
PIPELINED
AS
v_length NUMBER := LENGTH(p_string);
v_start NUMBER := 1;
v_index NUMBER;
BEGIN
WHILE(v_start <= v_length)
LOOP
v_index := INSTR(p_string, p_delimiter, v_start);

IF v_index = 0
THEN
PIPE ROW(SUBSTR(p_string, v_start));
v_start := v_length + 1;
ELSE
PIPE ROW(SUBSTR(p_string, v_start, v_index - v_start));
v_start := v_index + 1;
END IF;
END LOOP;

RETURN;
END splitstr;

創建完畢後,我們來測試一下,例如執行如下SQL:

select * from table(splitstr('Hello,Cnblogs!',','));

其輸出結果為一個兩行的表,如下圖:

熱點內容
ios6G與安卓12G哪個更快 發布:2025-01-24 11:26:22 瀏覽:827
下線源碼 發布:2025-01-24 11:26:22 瀏覽:523
windows8解壓軟體 發布:2025-01-24 11:04:41 瀏覽:559
藍牙聊天源碼 發布:2025-01-24 11:03:13 瀏覽:124
安卓是什麼意思是vivo嗎 發布:2025-01-24 11:01:32 瀏覽:486
懸賞網源碼 發布:2025-01-24 10:53:14 瀏覽:733
c語言時間變數 發布:2025-01-24 10:40:24 瀏覽:870
ppiandroid 發布:2025-01-24 10:25:50 瀏覽:1001
兒童壓縮機 發布:2025-01-24 10:25:09 瀏覽:75
蘋果的允許訪問在哪裡 發布:2025-01-24 10:24:32 瀏覽:32