1
使用
where
(
(kunde between :kdvon and :kdbis)
and
(AdrGrp between :AdrGrpvon and :AdrGrpbis)
and
(auftragstyp between :AuftrTypVon and :AuftrTypBis)
and
(Status between :statusvon and :statusbis)
and
IF LFDNR <> 0 THEN (LFDNUMMER = :LFDNR)
IF BESTELLTAG <> 0 then (bestelldatum = :BESTELLTAG)
)
它运作良好,直到if语句插入。 之后,我收到消息 SQL错误代码= -104。 令牌未知 - 第156行,第14列。 LFDNR。
IF条件定义为输入参数。使用冒号:将它们标记为参数无效。
问题 是否可以在这里使用“Where”里面的“If”? 如何使用condidional params?
TIA 罗尔夫
我必须删除使用的标准值:
和(::LFDNR为空或LFDNUMMER =:LFDNR) 工作正常 。非常感谢你。 –
@ user1543973对不起? –
0或''值没有正确输出(有另一个错误)。由于它们无论如何都被设置为“无”,我删除了标准值。所以这些参数有空值(如果没有值传递),我可以测试null或值。这工作正常。 –