[SQL] Find out the employee’s daily clock-in and clock-in time from an attendance table tb_cwa

Find out the specific time of the employee's daily clocking in and out of work from an attendance table tb_cwa

The relevant fields of the attendance sheet are as follows: ID, NAME, NO, TIME

ID  NAME         NO          TIME
1   zhangsan    1001         2020-01-01 08:34:40
2   lisi        1002         2020-01-01 08:39:29
3   wangwu      1003         2020-01-01 08:44:38
4   zhangsan    1001         2020-01-01 18:24:18
5   lisi        1002         2020-01-01 18:34:28
6   wangwu      1003         2020-01-01 18:54:20
日期          姓名              上班时间                    下班时间
2020-01-01    zhangsan          2020-01-01 08:34:40         2020-01-01 18:24:18
2020-01-01    lisi              2020-01-01 08:39:29         2020-01-01 18:34:28
2020-01-01    wangwu            2020-01-01 08:44:38         2020-01-01 18:54:20

solve:

SELECT TIME
      ,NAME
      ,MAX(start_time) m
      ,MAX(end_time) MAX
  FROM (SELECT NAME
              ,date_format(TIME, '%Y-%m-%d') AS TIME
              ,CASE
                 WHEN rn = 1 THEN
                  TIME
               END AS 'start_time'
              ,CASE
                 WHEN rn = 2 THEN
                  TIME
               END AS 'end_time'
          FROM (SELECT *
                      ,row_number() over(PARTITION BY no ORDER BY TIME) AS rn
                  FROM tb_cwa) a
         GROUP BY NAME
                 ,TIME) a
 GROUP BY NAME
         ,TIME

Tip: convert conversion function

Remarks: table creation and data

create table tb_cwa(id int,name varchar(10),no int,time datetime);
insert into tb_cwa values(1,'zhangsan',1001,'2020-01-01 08:34:40');
insert into tb_cwa values(2,'lisi',1002,'2020-01-01 08:39:29');
insert into tb_cwa values(3,'wangwu',1003,'2020-01-01 08:44:38');
insert into tb_cwa values(4,'zhangsan',1001,'2020-01-01 18:24:18');
insert into tb_cwa values(5,'lisi',1002,'2020-01-01 18:34:28');
insert into tb_cwa values(6,'wangwu',1003,'2020-01-01 18:54:20');

 

Guess you like

Origin blog.csdn.net/debimeng/article/details/104113932