这是带有管道分隔符的oracle输出记录
04/22/2015|695|1074795|CRUSE|AXDE|01/29/1963|88359|||||
我想像这样改变
"04/22/2015"|"695"|"1074795"|"CRUSE"|"AXDE"|"01/29/1963"|"88359"|||||
Perl中的查询是什么?
答案 0 :(得分:0)
我想像这样改变
" 04 /二千〇一十五分之二十二" |" 695" |" 1074795" |" CRUSE" |" AXDE&#34 ; |&#34 01 /一千九百六十三分之二十九" |" 88359" |||||
我不会说这是一种优雅的方式,因为修复源本身总是更好。在您的情况下,无论生成什么输出,您都可以将双引号连接到列名。
无论如何,您可以使用 REPLACE 和 RTRIM 在SQL中执行此操作:
SQL> WITH DATA AS(
2 SELECT '04/22/2015|695|1074795|CRUSE|AXDE|01/29/1963|88359|||||' str FROM dual
3 )
4 SELECT '"'||rtrim(REPLACE(REPLACE(str, '|', '"|"'), '""',''),'"') str FROM DATA;
STR
---------------------------------------------------------------------
"04/22/2015"|"695"|"1074795"|"CRUSE"|"AXDE"|"01/29/1963"|"88359"|||||
SQL>
答案 1 :(得分:0)
检查这个
select '"04/22/2015"|"695"|"1074795"|"CRUSE"|"AXDE"|"01/29/1963"|"88359"|||||' as str from dual
STR
---------------------------------------------------------------------
"04/22/2015"|"695"|"1074795"|"CRUSE"|"AXDE"|"01/29/1963"|"88359"|||||