【发布时间】:2017-10-10 06:51:15
【问题描述】:
我们正在使用基于 Oracle 的 ERP,我们的一个专栏有一个特定的规则,即我们在每个字符串的开头和结尾都有几个空格。它看起来像这样:
A | B
--------------------------------------
Value1 |123
Value2 |345
A 列中每个值前面有 3 个空格,后面有 9 个空格。我正在尝试使用 SQLPlus 脚本提取信息:
SET colsep ,
SET pagesize 0
SET feedback OFF
SET heading OFF
SET trimspool ON
SET trimout ON
spool d:\spool.csv
select trim(rtrim(A)), B, from table;
spool out
结果如下:
Value1 ,123
Value2 ,345
我需要的是:
Value1,123
Value2,345
知道如何实现吗? 尝试了 trim、rtrim、replace、regexp_replace 但它似乎不起作用。
【问题讨论】:
-
您的数据类型可能是
char。varchar会给你快速的结果。 -
这个有用吗?:select replace(a||','||b,' ','') from table;
-
这给了你什么:从表中选择转储(A);