在我使用LIKE运算符的可选参数查询中,Escape特殊字符不起作用。 这是查询Escape不能使用可选参数!
NAME LIKE CASE WHEN '%'[email protected]+'%' IS NULL THEN NAME ELSE '%'[email protected]+'%' END
的一部分,我想我可以把它像
NAME LIKE CASE WHEN '%'[email protected]+'%'ESCAPE '\' IS NULL THEN NAME ELSE '%'[email protected]+'%' END
但是当我添加逃逸“\”,但它引发错误。 任何帮助?
演示代码:
set @Name='Restaur\[ant'
SELECT [JOB].HOUSE_CODE, [JOB].JOB_CODE, [JOB].OPEN_DATE, [JOB].NAME AS Position, [JOB].DESCRIPTION, [RESTAURANT].ZIP_CODE AS ZipCode,
[STATE].STATE_NAME AS State, [RESTAURANT].CITY_NAME AS City
FROM [JOB] INNER JOIN
[RESTAURANT] ON [JOB].HOUSE_CODE = [RESTAURANT].HOUSE_CODE INNER JOIN
[STATE] ON [RESTAURANT].STATE_CODE = [STATE].STATE_CODE INNER JOIN
[JOB_CODE] ON [JOB].HOUSE_CODE = [JOB_CODE].HOUSE_CODE AND [JOB].JOB_CODE = [JOB_CODE].JOB_CODE AND
[RESTAURANT].HOUSE_CODE = [JOB_CODE].HOUSE_CODE
WHERE ( [JOB].NAME LIKE CASE WHEN '%'[email protected]+'%' IS NULL THEN [JOB].NAME ELSE '%'[email protected]+'%' END ESCAPE '\')
也许你只是写你想要实现的?很难回答一些不是问题的东西。 – AlexanderMP 2010-11-03 14:30:23
为演示提供足够的代码详细信息 – mahesh 2010-11-03 14:34:17
它引发了什么错误? – 2010-11-03 14:37:11