【发布时间】:2013-11-02 15:00:12
【问题描述】:
您好,这是我的 SQL 查询:
WHERE table1.Regnumber IN (
CASE
WHEN @fRegNumber IS NOT NULL AND @fRegNumber<>-1 THEN @fRegNumber
ELSE (SELECT Regnumber FROM table2)
END
)
一个错误:
'子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或子查询用作表达式时,这是不允许的。'
我该如何解决这个问题?
【问题讨论】:
-
不管那个语法错误,很可能整个
WHERE子句中的逻辑可以重写为更合乎逻辑且更易于阅读的内容。尝试提供一些输入数据和您预期的输出数据,以及对您正在尝试执行的操作的说明。