次のような結果を返すOracleクエリがあります
Column1 Column2 Column3
1 -A,D -DEF
2 -B,C -JHI
どうすれば次のような結果を得ることができますか
Column1 Column2 Column3 Column4
1 -A -D -DEF
SUBSTRING
文字列の一部を受け取る関数とINSTR
コンマの位置を見つける関数を利用します。
select
column1,
substring(column2,1,instr(column2,',')-1) as column2a,
substring(column2,instr(column2,',')+1) as column2b,
column3
from mytable
してみてください:
select
Column1,
substr(Column2 , 1, instr(Column2, ',')-1) as Column2,
substr(Column2 , instr(Column2, ',')+1) as Column3,
Column3 as Column4
from(
select 1 as Column1, '-A,D' as Column2, '-DEF' as Column3 from dual
)x