最近我遇到了一个查询问题,该问题没有返回它预期返回的所有内容.按条件选择的部分查询如下:
AND field LIKE
CASE WHEN @val = 1 THEN
'%'
ELSE
'N'
END
Run Code Online (Sandbox Code Playgroud)
现在,当@val为1时,我希望这段代码基本上什么也不做,就像基本上接受任何值的条件一样,包括空值.
我错了吗?如果是这样,有没有人有解决方案?我正在思考一些事情
AND field LIKE
CASE WHEN @val = 1 THEN
'%' OR ISNULL(field)
ELSE
'N'
END
Run Code Online (Sandbox Code Playgroud)
但是SQL并不像那样工作,但这基本上就是我想要实现的目标.
谢谢大家,如果这是重复,我很抱歉,我找不到答案.