By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE Daily(
att_date DATE,
emp_code INT,
emp_name VARCHAR(50),
in_time DATETIME,
out_time DATETIME
);
CREATE TABLE Trnevents(
emp_readr_id int,
DT DATETIME,
EVENTID INT
);
INSERT INTO Daily VALUES ('2018-10-21',9999,'Test','2018-10-21 08:00:00.000','2018-10-22 06:00:00.000');
INSERT INTO Trnevents VALUES (9999,'2018-10-24 07:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-24 05:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-24 03:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-23 21:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-23 19:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-23 06:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-22 06:00:00.000',0);
INSERT INTO Trnevents VALUES (9999,'2018-10-21 08:00:00.000',0);
--id emp_name Date CHECK1 CHECK2 Total1 CHECK3 CHECK4 Total2
SELECT emp_readr_id,
emp_name,
[Date],
MAX(CASE WHEN RN = 1 THEN time END),
MAX(CASE WHEN RN = 2 THEN time END),
emp_readr_id | emp_name | Date | (No column name) | (No column name) | (No column name) | (No column name) |
---|---|---|---|---|---|---|
9999 | Test | 2018-10-21 | 08:00:00 | null | null | null |
9999 | Test | 2018-10-22 | 06:00:00 | null | null | null |
Warning: Null value is eliminated by an aggregate or other SET operation.