如何在SQL Server的存储过程中转义字符串,以便可以在LIKE表达式中安全使用。
假设我有一个NVARCHAR像这样的变量:
declare @myString NVARCHAR(100);
我想在LIKE表达式中使用它:
... WHERE ... LIKE '%' + @myString + '%';
如何转义字符串(更具体地说,是对LIKE模式匹配有意义的字符,例如%?在T-SQL中或),以便可以安全地以这种方式使用?
例如,给定:
@myString = 'aa%bb'
我想要:
WHERE ... LIKE '%' + @somehowEscapedMyString + '%'
匹配'aa%bb','caa%bbc'但没有'aaxbb'或'caaxbb'。