У меня есть хранимая процедура, принимающая дату и месяц как параметр, который приводит к ежемесячному посещению листа.Для обработки нулевых значений я хочу заменить нулевые значения на «Ноль».
Хранимая процедура
ALTER procedure [dbo].[sps_AttendanceShowModified] @mon int, @year int
As begin DECLARE @cols AS NVARCHAR(MAX)=''; DECLARE @query AS
NVARCHAR(MAX)='';
set @query = 'SELECT * from (
select e.Name,a.WorkHours,DAY(a.AttendaceDate) AS d1 from Attendace a,employee e where e.EmpID=a.EmpID and
MONTH(a.AttendaceDate)= ' + CONVERT(VARCHAR(12), @mon)+ ' AND
YEAR(a.AttendaceDate)= ' + CONVERT(VARCHAR(12), @year)+ ' ) src pivot
(
max(WorkHours) for d1 in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30])
) piv'
execute(@query) end