假设我有这个SQL查询:
declare @input varchar(20)
select *
from myTable
where CONTAINS (myColumn, ISNULL(@input, 'replacement text'))
Run Code Online (Sandbox Code Playgroud)
如果我尝试执行此操作,则会收到错误消息"ISNULL'附近的语法错误." 我知道这是ISNULL的正确语法.是否有理由不能在CONTAINS语句中调用ISNULL?
试试这个:
declare @input varchar(20)
SET @input=ISNULL(@input, 'replacement text')
select *
from myTable
where CONTAINS (myColumn, @input)
Run Code Online (Sandbox Code Playgroud)
当您尝试将表达式放入存储过程调用时,这是同样的问题:
EXEC YourProcedure ISNULL(@input, 'replacement text') --will fail too
Run Code Online (Sandbox Code Playgroud)
CONTAIN需要一个字符串文字,请参阅CONTAINS(Transact-SQL)
归档时间: |
|
查看次数: |
808 次 |
最近记录: |