CREATE TABLE Attendance(
[EmpCode] INT
,[TimeIn] DATETIME
,[TimeOut] DATETIME
)
INSERT INTO Attendance VALUES (12, '2018-08-01 09:00:00.000', '2018-08-01 17:36:00.000');
INSERT INTO Attendance VALUES (12, '2018-08-02 09:00:00.000', NULL);
INSERT INTO Attendance VALUES (12, '2018-08-03 09:25:00.000', '2018-08-03 16:56:00.000');
INSERT INTO Attendance VALUES (12, '2018-08-04 09:13:00.000', NULL);
INSERT INTO Attendance VALUES (12, '2018-08-06 09:00:00.000', '2018-08-07 18:15:00.000');
INSERT INTO Attendance VALUES (12, '2018-08-07 09:27:00.000', NULL);
SELECT
COUNT(CAST(COALESCE([TimeIn], [TimeOut]) AS DATE))
FROM [dbo].[Attendance]
WHERE
CAST(COALESCE([TimeIn], [TimeOut]) AS DATE) BETWEEN '2018-08-01' AND '2018-08-07'