刚刚在MS-Query中编写了一个SQL脚本,我很难尝试让它工作。
我所追求的是相当于这个SQL where子句:
AND ((examplefield = @Para) or (@Para = ''))
因此,如果参数=字段中的某些内容,则只显示该参数=如果参数=空白则显示所有结果。
到目前为止,这是我的工作,如果我想选择一个特定的项目,现在我只需要包括额外的如果空白显示全部。
AND (`'Project Master List$'`.`Type of Work`= ?)
遗憾的是,这不起作用。
AND ((`'Project Master List$'`.`Type of Work`= ?) OR (? = ""))
有什么建议吗?
答案 0 :(得分:0)
试一下?
Case When ?="" THEN
'docode'
WHEN ?="OtherValue" THEN
'DoCode'
Else
'DoCode '
End
IIF示例:
iif(?="",
iif(?="OtherValue",ReturnSomethingTrue,ReturnSomethingFalse)
,ReturnSomethingTrue,ReturnsomethingFalse)
答案 1 :(得分:0)
我回顾了原来的问题并意识到我将where子句包装在错误的引号中。见下文
错误陈述
AND ((`'Project Master List$'`.`Type of Work`= ?) OR (? = ""))
正确陈述
AND (`'Project Master List$'`.`Type of Work`= ? OR ? = '')
一旦我在条款末尾做出改变,它就有效了。