У меня есть хранимая процедура, как это:как передать более одного значения в подзапросом
ALTER procedure [dbo].[ParkingDeatailsReportnew]
@startdate nvarchar(100),
@enddate nvarchar(100)
as
begin
DECLARE @cols AS NVARCHAR(MAX), @query AS NVARCHAR(MAX)
select @cols =
STUFF((SELECT distinct ',' + QUOTENAME(Vtype) from VType_tbl FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') ,1,1,'')
set @query =
'SELECT Date, ' + @cols + '
from (select v.Vtype, convert(date, dtime) as Date
from Transaction_tbl t inner join VType_tbl v on t.vtid = v.vtid where dtime between ''' + @startdate + ''' and ''' + @enddate +
'''and locid IN ' + (select CAST(l.Locid as varchar(max)) from Location_tbl l)
+ ' ) d pivot (count(Vtype) for Vtype in (' + @cols + ') ) p '
execute(@query)
end
При выполнении этого я получаю сообщение об ошибке, как это:
Subquery вернулся более чем на 1 значение. Это недопустимо, если подзапрос следует за =,! =, <, < =,>,> = или когда подзапрос используется как выражение.
Как я могу передать более одного значения в моем подзапросе?
yes..sir ,, это работало нормально для меня – user2648161
Добро пожаловать @ user2648161 :) – Devart