oracle中split是关键字?
来源:新能源网
时间:2024-08-17 13:23:10
热度:
oracle中split是关键字?【专家解说】:oracle 中的split是分区里有数据检索用的,具体也不知道怎用,
不是JAVA里的split函数,若想要在oracle 实现些
【专家解说】:oracle 中的split是分区里有数据检索用的,具体也不知道怎用,
不是JAVA里的split函数,
若想要在oracle 实现些函数
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 ('1;;12;;123;;1234;;12345', ';;') AS ty_str_split
)
);
r c%ROWTYPE;
BEGIN
OPEN c;
LOOP
FETCH c INTO r;
EXIT WHEN c%NOTFOUND;
DBMS_OUTPUT.put_line (r.column_value);
END LOOP;
CLOSE c;
END;
/
结果:
1
12
123
1234
12345
-
哪位能帮我用matlab 计算自然对数的底e,要用两种方法,坐等,要函数过程加结果,谢了!!2024-08-17
-
市煤气公司要在地下修建一个容积为104立方米的圆柱形储存室。写出储存室的底面积与其深度的函数关系式2024-08-17
-
c++中哪个关键字既可用于表示变量,又可表示一个函数?2024-08-17
-
正则表达式 有三个字符串如何匹配同时包含两个关键字的字符串2024-08-17
-
在vim编写python代码时,怎么让关键字、注释、函数等用不同的颜色显示。2024-08-17
-
java里面如何截取两个关键字中间的字符串2024-08-17
-
C语言关键字到底是什么? 是一种函数吗? 调用函数可以没有“()”吗?2024-08-17
-
(2013春•如皋市校级月考)已知定义在R上的函数f(x)和g(x)满足g(x)...2024-08-17
-
波函数的物理意义?2024-08-17
-
汽车以恒定功率启动时,汽车的加速度和时间的函数关系?(为什么开口向下)2024-08-17
-
已知函数f(x)=2sin(2x+π6),x∈R.(1)求函数f(x)的最小正周期及单调增区间;(2)当x∈(π4,3π4]2024-08-17
-
已知函数f(x)=px?p?lnx(p>0)是增函数.(I)求实数p的取值范围;(II)设数列{an}的通项公式为an=2n+12024-08-17
-
我们使用PCI-826LU以及PCI-TMC12A,想问一下在泓格的DEMO中几个函数用法PCI-826LU?2024-08-17
-
风电的波形不是标准的正弦函数2024-08-17
-
洗煤厂重介洗煤,介质密度和灰分的关系符合什么函数?2024-08-17