在T-SQL中修剪字符串的最佳方法是什么?

时间:2017-07-18 07:15:51

标签: sql tsql

我想修剪一个由汉字组成的角色。

Select '10樓 10 /F'
Select '7樓 7/F'

Bad Result:

10樓 10 /F
7樓 7/F

I want to this:

10/F
7/F

2 个答案:

答案 0 :(得分:2)

您可以使用CHARINDEX查找中文字符的位置 然后使用SUBSTRING根据该位置获取所需的部分 并将所有空格从该结果中删除。

例如:

select * , replace(substring(value, charindex(N'樓',value)+1, len(value)),' ','') as value2
from (values 
 (N'10樓 10 /F'),
 (N'7樓 7/F')
) v(value);

请注意,在字符串前面加上N标记为NVARCHAR 由于汉字是一个unicode字符。

答案 1 :(得分:0)

尝试这样做:

test-fixtures/emr_configurations.json