只选择星期五和星期一在mysql中

Awa*_*ais 5 mysql select weekday dayofweek weekend

我在建立一个考勤系统的工作,我做得很好,但我被困在一个地方.在计算叶子时,如果一个人在星期五休假,然后在星期一再次休假,那么星期六和星期日之间也应该算作叶子.

我已经能够通过以下查询从我的表中仅提取星期五和星期一:

SELECT * FROM  `main` WHERE (DAYOFWEEK( DATE ) =2 OR DAYOFWEEK( DATE ) =6 ) 
AND emp_no =4 AND STATUS ='leave' ORDER BY DATE ASC 
Run Code Online (Sandbox Code Playgroud)

但我不知道如何选择周五和下周一只是让我知道人是在休假上周五以及周一.

任何帮助,将不胜感激.

egg*_*yal 5

这将为您提供跨越星期五和下周一的所有"叶子":

SELECT *
FROM   main fri JOIN main mon
    ON fri.DAYOFWEEK(DATE)=6
   AND mon.DATE = fri.DATE + INTERVAL 3 DAY
   AND fri.emp_no = mon.emp_no
WHERE  fri.STATUS='leave' AND mon.STATUS='leave'
Run Code Online (Sandbox Code Playgroud)