表“T1”裡面列“A裡面的欄位是這個樣子的“a b c”怎麼用sql把它拆分成3列分別是a,b,c

時間 2021-06-12 07:59:46

1樓:隨緣_莫隨緣

/*****方法一******/

/*示例一*/

select substr('a→b→c',1,instr('a→b→c','→',1,1)-1)

,substr('a→b→c',instr('a→b→c','→',1,1)+1,instr('a→b→c','→',1,2)-instr('a→b→c','→',1,1)-1)

,substr('a→b→c',instr('a→b→c','→',1,2)+1,length('a→b→c')-instr('a→b→c','→',1,2))

from dual

union all

/*示例二*/

select substr('aa→bb→cc',1,instr('aa→bb→cc','→',1,1)-1)

,substr('aa→bb→cc',instr('aa→bb→cc','→',1,1)+1,instr('aa→bb→cc','→',1,2)-instr('aa→bb→cc','→',1,1)-1)

,substr('aa→bb→cc',instr('aa→bb→cc','→',1,2)+1,length('aa→bb→cc')-instr('aa→bb→cc','→',1,2))

from dual

union all

/*****方法二******/

select regexp_substr('aa→bb→cc','[^→]+',1,1),regexp_substr('aa→bb→cc','[^→]+',1,2),regexp_substr('aa→bb→cc','[^→]+',1,3)

from dual

2樓:匿名使用者

字串擷取。

select substr(a,1,1), substr(a,3,1),substr(a,5,1) from t1