我写了一个SQL查询一样,SQL查询与条件在where子句
DECLARE @TypeID BIGINT
--SET @TypeID=169
SELECT TypeID from TrnChecklist where TypeID IN
(CASE WHEN (@TypeID IS NOT NULL AND @TypeID <> '') THEN @TypeID
ELSE (select distinct TypeID from TrnChecklist where AuditID=57) END)
如果我提供@TypeID它给了我的记录。但是如果我不提供@TypeID那么它给了我错误
“子查询返回多个值。当子查询遵循=,!=,......这是不允许的”
但是我使用“TYPEID IN”在自条件“选择从TrnChecklist不同TYPEID其中AuditID = 57”返回多个值
我的数据样本(在TrnChecklist表。少量其它列,但我我只使用这些2)
? –
由于(从TrnChecklist中选择不同的TypeID,其中AuditID = 57),您正在获取多行的错误。 –