Trik, který funguje, je SEŘADIT svou hodnotu do Latin1_General_BIN před použitím REPLACE a také použijte nchar(0x00) COLLATE Latin1_General_BIN pro vzor_řetězce .
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
,'')
Zde je výsledek (použijte Output To Text):
Contains Replaced with - Removed
---------- ----------------- --------
123 567 123-567 123567