0

为什么这不起作用?是字符集问题还是什么?这真让我抓狂。我一直在寻找。也许这只是那些日子之一。:(

select replace('Doe, John B ',' _ ','')

预期结果:“Doe,John”

实际结果:“Doe, John B”

如果这是不可能的replace,我还能如何实现这个结果?

4

2 回答 2

2

REPLACE函数不接受 sql server 中的模式/通配符。

于 2012-10-03T17:50:48.213 回答
1

对于这个变量:

select 
rtrim(reverse(substring(reverse(rtrim('Doe, John B ')), charindex(' ', reverse(rtrim('Doe, John B '))), len(rtrim('Doe, John B ')))))

对于整个表:

select 
rtrim(reverse(substring(reverse(rtrim(columnname)), charindex(' ', reverse(rtrim(columnname))), len(rtrim(columnname)))))
from tablename
where columnname like '% _ '
于 2012-10-03T18:13:12.020 回答