Tricket som fungerar är att SAMMANSTÄLLA ditt värde till Latin1_General_BIN innan du använder REPLACE och använd även nchar(0x00) COLLATE Latin1_General_BIN för string_pattern .
REPLACE ( string_expression , string_pattern , string_replacement )
select
[Terminated] = N'123' + nchar(0) + N'567'
,[Replaced with -] = REPLACE((N'123' + nchar(0) + N'567') COLLATE Latin1_General_BIN
, nchar(0x00) COLLATE Latin1_General_BIN
,'-')
,[Removed] = REPLACE((N'123' + nchar(0) + N'567') COLLATE Latin1_General_BIN
, nchar(0x00) COLLATE Latin1_General_BIN
,'')
Här är resultatet (använd utdata till text):
Contains Replaced with - Removed
---------- ----------------- --------
123 567 123-567 123567