如何在oracle输出记录中加入双引号

时间:2015-04-23 10:37:48

标签: oracle

这是带有管道分隔符的oracle输出记录

04/22/2015|695|1074795|CRUSE|AXDE|01/29/1963|88359|||||

我想像这样改变

"04/22/2015"|"695"|"1074795"|"CRUSE"|"AXDE"|"01/29/1963"|"88359"|||||

Perl中的查询是什么?

2 个答案:

答案 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"|||||