以下のクエリは正常に機能し、必要に応じて正しい結果を返します
select top 1 SID from vSTable where (ID in
(select ID from Engine where Name='nnn' OR Name='mmm')
and QuestionTypeID=1 and IsOfficial=1) order by vSTable.ITime desc;
しかし、私がこのように使用すると
declare @SVal as int
set @SVal = select top 1 SID
from vSTable
where (
ID in
(select ID from Engine where Name='nnn' OR Name='mmm')
and QuestionTypeID=1
and IsOfficial=1
) order by vSTable.ITime desc;
select stmtの近くで構文が正しくないというエラーが表示されます