使用时不工作我使用下面的函数从字符串中去除所有多余的空白:功能在选择
CREATE FUNCTION RemoveSpaces
(
-- =============================================
-- Author: Amit Singh
-- Description: Remove extra spaces from string
-- Usage: SELECT dbo.RemoveSpaces('Code Jotter')
-- =============================================
@str AS VARCHAR(MAX)
)
RETURNS VARCHAR(MAX)
AS
BEGIN
RETURN
REPLACE(REPLACE(REPLACE(@str,' ','{}'),'}{',''),'{}',' ')
END
功能工作正常。但是当我尝试使用SELECT
语句中的函数时,字符串保持不变。
SELECT TOP 1
dbo.RemoveSpaces(sms_message)
FROM MyTable
我收到与sms_message
相同的值,但没有多余的空格。
你能提供一个'sms_message'的样本值,你看到这个错误的行为吗? – Mureinik
@vkp我不认为修剪功能从“An(space)(space)(space)example”中删除空格。 – Disasterkid
您看到的消息字符串中的空格不是真实空格。你的代码应该工作。例如,您的代码在SQL Fiddle中工作:http://www.sqlfiddle.com/#!3/b0c7c/1。 –