Oracle字符串拆分多行问题
希望能在SQL中实现,不用开发改程序。
下面是问题:
现在的格式:
我业务中想要的格式:
麻烦指教一下。
Oracle字符串拆分多行问题
希望能在SQL中实现,不用开发改程序。
下面是问题:
现在的格式:
我业务中想要的格式:
麻烦指教一下。
在Oracle中可以使用REGEXP_SUBSTR和CONNECT BY来实现字符串的多行拆分:
```bash
SELECT REGEXP_SUBSTR(your_column, '[^|]+', 1, LEVEL) AS one_line
FROM your_table
CONNECT BY LEVEL <= REGEXP_COUNT(your_column, '[^|]+');
这里的关键是:
举例:
your_column的值为:
'第一行|第二行|第三行'
上述SQL查询结果为:
one_line
第一行
第二行
第三行
```
这样就可以将Oracle中的字符串拆分为多行输出,全部在SQL查询中实现,无需修改程序。