将数据拆分为oracle中的新行但在同一行中
Split data into a new line in oracle but in the same row
我有这样的数据
ColumnA ColumnB CloumnC
1 国王狗,猫
我想在一行中显示如下所示的数据"cat"应该在同一行中换行显示
ColumnA ColumnB CloumnC
1 只国王狗
猫
您可以将拆分字符“,”替换为换行符。
WITH sample_data
AS ( select null as ColumnA
, 'King' as ColumnB
, 'Dog,Cat' as ColumnC
FROM dual
)
SELECT ColumnA
, ColumnB
, REPLACE(ColumnC,',',CHR(10))
FROM sample_data
一个换行取决于操作系统。在基于Unix的OS中是CHR(10)
,在Windows中是CHR(13)
之后是 CHR(10)
。
在Windows OS:
SELECT columna
, columnb
, REPLACE(columnc,',',CHR(10)||CHR(13))
FROM table;
基于 Unix OS:
SELECT columna
, columnb
, REPLACE(columnc,',',CHR(10))
FROM table;
我有这样的数据
ColumnA ColumnB CloumnC
1 国王狗,猫
我想在一行中显示如下所示的数据"cat"应该在同一行中换行显示
ColumnA ColumnB CloumnC
1 只国王狗
猫
您可以将拆分字符“,”替换为换行符。
WITH sample_data
AS ( select null as ColumnA
, 'King' as ColumnB
, 'Dog,Cat' as ColumnC
FROM dual
)
SELECT ColumnA
, ColumnB
, REPLACE(ColumnC,',',CHR(10))
FROM sample_data
一个换行取决于操作系统。在基于Unix的OS中是CHR(10)
,在Windows中是CHR(13)
之后是 CHR(10)
。
在Windows OS:
SELECT columna
, columnb
, REPLACE(columnc,',',CHR(10)||CHR(13))
FROM table;
基于 Unix OS:
SELECT columna
, columnb
, REPLACE(columnc,',',CHR(10))
FROM table;