Я создаю отчет о посещаемости с помощью сводного SQL на основе данных, полученных с помощью большого пальца, но запрос показывает ошибку. Необходимо объявить скалярную переменную "@abc".вот мой запрос
DECLARE @cols NVARCHAR(MAX)
DECLARE @abc NVARCHAR(MAX)
set @abc='00:00'
SELECT
top 1 @cols = COALESCE(@cols + ',[' + CONVERT(varchar, DateIn ,106 )
+ ']','[' + CONVERT(varchar, DateIn ,106) + ']' )
FROM DailyAttendanceMaster where
DateIn between '2019-01-01 00:00:00.000' and '2019-01-01 00:00:00.000'
group by DateIn order by DateIn asc
DECLARE @qry NVARCHAR(4000) SET
@qry = 'SELECT * FROM (SELECT Employee_Master.Employee_Name,
case when convert(char(5), TimeIn, 108)= convert(char(5), @abc, 108) then "A"
else "B"
end "TimeIn" ,
DailyAttendanceMaster.DateIn FROM DailyAttendanceMaster inner
join Employee_Master on Employee_Master.essl_EmpID=DailyAttendanceMaster.EMPID)emp
PIVOT (MAX(TimeIn) FOR DateIn IN (' + @cols + ')) AS stat'
EXEC(@qry)