我有一个问题,那就是表中的列中的数据不好。好的数据始终是一个不确定的整数,以/分隔,然后是两个字符。问题是我在两个字符之后有任意多个句点,...。
示例:1/JP... or 25/US.. of 100/GB. etc....
什么删除语句将删除句点(。),但将所有内容保留在两个字符之前?
答案 0 :(得分:2)
我假设/
之后的两个字符是 not 期。
如果您只想删除句点,则可以使用replace()
:
select replace(col, '.', '')
如果您想更改数据以便没有句点,则可以使用update
:
update t
set col = replace(col, '.', '')
where col like '%/%.';
答案 1 :(得分:0)
您还可以考虑如下使用CHARINDEX的SUBSTRING方法-
DECLARE @Str VARCHAR(100) = '1/JP...'
SELECT SUBSTRING(@Str,0,CHARINDEX('/',@Str,0)+3)