在oracle中将一行字符串拆分成多行

[复制链接]
发表于 2024-8-5 23:35:48 | 显示全部楼层 |阅读模式
比方,有如下一张表,表名为bk_test。插入了以下数据:
  1. CREATE TABLE BK_TESK(id varchar2(10),s varchar2(20));
  2. insert into BK_TESK values ('A','1,2,3');
  3. insert into BK_TESK values ('B','4,5,6');
  4. insert into BK_TESK values ('C','7,8');
复制代码
查询数据如图所示

我们需要将字段S中以逗号分隔的数据拆分成多行。结果如图所示

实现将一行数据拆分成多行的代码如下所示
[code]SELECT    id,    TRIM(REGEXP_SUBSTR(s, '[^,]+', 1, LEVEL)) AS sFROM    BK_TESKCONNECT BY    PRIOR SYS_GUid() IS NOT NULL    AND LEVEL

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表