使用時不工作我使用下面的函數從字符串中去除所有多餘的空白:功能在選擇
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。 –