Oracle SQL截取字符串

有这样一个字符串:1,23,456,7890  用一个SQL语句按","将其截成四段,并显示成四行,如下:1234567890
最新回答
寄纸筏

2024-10-16 13:05:44

4行?4列不行么?
select substr(col, 1,1) as a, substr(col, 2,2) as b, substr(col,4,3) as c, substr(col,7,4) from table_name;
用逗号隔开
select substr(col, 1,1) ||','||substr(col, 2,2) ||','|| substr(col,4,3) ||','||substr(col,7,4) from table_name;
且奔赴

2024-10-16 22:20:21

select substr('A123456',instr('A123456','A')+1,len('A123456')-instr('A123456','A'))
from dual

instr 返回1, 所以给它+1 , 从第2位开始截取到总长度-‘A’这个字符串的位置, 就是 6 ,
所以最终会是
select substr('A123456',2,6) from dual

这么写能明白吗?
一只哀伤的猫

2024-10-16 16:36:00

使用union all 连接