下面是我用来测试patindex的select。我试图删除所有特殊字符,但返回的结果集如下所示。基本上有一些负数与会计格式。我需要删除这个格式,它只是数字($102.00)。
Sql:
[
0.00,
$102.00)]
select cast(rtrim(ltrim(Replace([Amount],SUBSTRING([Amount],patindex('%[^0-9]%',[Amount]),1),'') ) )as varchar) from Temp2
有人知道怎么去掉那个封口吗 )
? 我试过一堆正则表达式,但我就是不能让它消失。
任何帮助都将不胜感激。
编辑:我的道歉。我使用的是sql server [$0.00,($25.00)]
我明白了。我需要它看起来像 [0.00,25.00]
我已经试过了 '%[()]%'
还是这个 '%[\(\)%]'
只会移除第一个。如果我翻转它,它只会删除右括号,而不会删除左括号。还有其他一些组合。
1条答案
按热度按时间kq4fsx7k1#
您只需使用replace 3次就可以删除不需要的字符。
如果需要将其应用于表中的列(例如amount),而不是@s,请在sql查询中使用该列名
这是小提琴