无法修剪表格中以下数据的空白区域。列数据类型为VARCHAR2(650 CHAR)。我试过修剪功能来消除空白。但那不适合我。
我桌上的数据:
'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14 '
'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14 '
'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14 '
我想修剪下面的数据
'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14'
'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14'
'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14'
请你帮我解决一下。
答案 0 :(得分:1)
使用Trim
功能
select Trim(trailing ' ' from 'xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14 ') from dual
或使用Rtrim
select RTrim('xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14 ') from dual
答案 1 :(得分:0)
我会使用REGEXP_REPLACE()
,因为其中有其他空格字符,例如标签:
SELECT REGEXP_REPLACE(mydata, '\s+$') AS mydata
FROM mytable
希望这会有所帮助。如果TRIM()
不起作用,那么我怀疑你有其他东西而不是空格。
如果您知道数据将以数字结尾,您可能还会尝试以下操作:
SELECT REGEXP_REPLACE(mydata, '\D+$') AS mydata
FROM mytable
正则表达式中的\D
匹配除数字之外的所有内容,因此将修剪任何不是数字0-9
的尾随字符。
答案 2 :(得分:0)
我们还可以使用以下方法修剪左侧和右侧空白
SELECT LTrim(RTrim('xxxxxxxxxx yyyyyyyyy - 12/7/14 - 12/13/14 ')) FROM dual