Это часть моей хранимой процедуры. У меня вышеупомянутая ошибка в этом запросе
from Log PA
left join workflow WF on PA.newWFid =
(CASE
WHEN PA.UserCode is not null THEN (SELECT ExistingwfID from RMShuffleLog RM
LEFT JOIN PackageApprovalLog PA on PA.ShuffleId = RM.ShuffleId )
end)
Это работало нормально, но я добавил выражение case в условии соединения выше. Это то, что я добавил выше:
left join workflow WF on PA.newWFid =
(CASE
WHEN PA.UserCode is not null THEN (SELECT ExistingwfID from RMShuffleLog RM
LEFT JOIN PackageApprovalLog PA on PA.ShuffleId = RM.ShuffleId )
end)
После этого он показывает мне ошибку.
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <,
<= , >, >= or when the subquery is used as an expression
. Мой лог c должен проверить, является ли первая строка пользовательского кода нулевым, затем выбрать существующий wfid из RMshufflelog. Может кто-нибудь сказать мне, в чем проблема?