это таблица для журналов посещаемости:вычислить посещаемость и отметить отсутствующие на каждый день MS SQL
CREATE TABLE [dbo].[DeviceLogs] (
[DeviceLogId] INT NOT NULL,
[UserId] NVARCHAR (50) NOT NULL,
[LogDate] DATETIME NOT NULL,
);
это мой сотрудник стол:
CREATE TABLE [dbo].[Employees] (
[EmployeeId] INT IDENTITY (1, 1) NOT NULL,
[EmployeeName] NVARCHAR (50) NULL,
[UserId] NVARCHAR (50) NOT NULL,
[Gender] NVARCHAR (255) NULL,
[DepartmentId] NVARCHAR (255) NULL,
[Designation] NVARCHAR (255) NULL,
[CategoryId] INT NULL,
[DOJ] DATETIME NULL,
[DOR] DATETIME NULL,
[Status] NVARCHAR (255) NULL,
[DOB] DATETIME NULL,
);
Мы внесем журналы посещаемости в первой таблице ,
Теперь я хочу рассчитать посещаемость каждого сотрудника в каждый день.
SELECT [userid] AS identit,
CONVERT(VARCHAR, userid),
Min(logdate) AS lowtime,
Max(logdate) AS hightime,
CONVERT(VARCHAR, Max(logdate) - Min(logdate), 108) AS dur,
CASE
WHEN CONVERT(VARCHAR, Max(logdate) - Min(logdate), 108) IS NOT NULL
THEN
'present'
ELSE 'Absent'
END AS Status
FROM [dbo].[devicelogs]
GROUP BY [userid]
ORDER BY userid DESC
Это запрос MS SQl, который я использую. Но это дает мне результат только в том случае, если у человека есть журналы посещаемости.
Я хочу рассчитать посещаемость, даже если человек отсутствует. Я хочу, чтобы он повторял его каждый день.
Пожалуйста, помогите мне здесь.
Вы помечено C#, которые вы пытались вычисления в C#? Если да, приложите свой [код C#] (http://stackoverflow.com/help/how-to-ask). – lloyd