oracle JS2306080011 JS2306080010 sql 如何按照逗号拆分
可以使用 Oracle SQL 中的 REGEXP_SUBSTR 函数和正则表达式来实现按逗号拆分字符串的功能。例如:
SELECT REGEXP_SUBSTR('JS2306080011,JS2306080010', '[^,]+', 1, LEVEL) AS separated_value FROM DUAL CONNECT BY LEVEL <= REGEXP_COUNT('JS2306080011,JS2306080010', ',') + 1;
输出结果为:
separated_value
JS2306080011 JS2306080010
解释:
这条 SQL 语句中的 REGEXP_SUBSTR 函数接收四个参数:
- 要拆分的字符串,即 'JS2306080011,JS2306080010';
- 正则表达式,表示拆分的规则。这里使用 '[^,]+' 表示匹配一个或多个非逗号的字符;
- 开始匹配的位置,这里设为 1;
- 返回的匹配结果的索引号,使用 LEVEL 表示。
接下来使用 CONNECT BY LEVEL 和 REGEXP_COUNT 函数来循环执行 REGEXP_SUBSTR 函数,直到拆分完所有的子串
原文地址: https://www.cveoy.top/t/topic/gCBp 著作权归作者所有。请勿转载和采集!