Мы использовали функцию, чтобы сделать что-то подобное, что петельное через строку, хотя это было главным образом для удаления символов, которые не были в «@ValidCharacters» строка. Это было полезно для удаления всего, что мы не хотели - обычно не буквенно-цифровых символов, хотя я думаю, что у нас также было место, цитата, одинарная кавычка и несколько других в этой строке. Он действительно использовался для удаления непечатаемых персонажей, которые время от времени подкрадывались, поэтому не может быть идеальным для вашего дела, но может дать вам некоторые идеи.
CREATE FUNCTION [dbo].[ufn_RemoveInvalidCharacters]
(@str VARCHAR(8000), @ValidCharacters VARCHAR(8000))
RETURNS VARCHAR(8000)
BEGIN
WHILE PATINDEX('%[^' + @ValidCharacters + ']%',@str) > 0
SET @str=REPLACE(@str, SUBSTRING(@str ,PATINDEX('%[^' + @ValidCharacters +
']%',@str), 1) ,'')
RETURN @str
END
использование другого 'REPLACE':' ЗАМЕНЫ (REPLACE (T2 [ShipToCode], '&', 'и'), '', ''.) ' – Lamak