Oracle数据库中没有split函数,但可以使用正则表达式函数REGEXP_SUBSTR来实现字符串分割的功能。
REGEXP_SUBSTR的语法结构如下:
REGEXP_SUBSTR(source_string, pattern, position, occurrence, match_parameter)
举个例子说明REGEXP_SUBSTR的用法:
SELECT REGEXP_SUBSTR('John,Doe,123 Main St', '[^,]+', 1, 1) AS first_name,
REGEXP_SUBSTR('John,Doe,123 Main St', '[^,]+', 1, 2) AS last_name,
REGEXP_SUBSTR('John,Doe,123 Main St', '[^,]+', 1, 3) AS address
FROM dual;
以上SQL语句会将字符串"John,Doe,123 Main St"按照逗号进行分割,然后分别提取出第一个、第二个和第三个部分,输出结果如下:
first_name | last_name | address
---------------------------------
John | Doe | 123 Main St