DB/MySQL

[MySQL] 두 날짜 사이 일수, 주말(평일) 일수 구하기

동호다찌 2022. 4. 1. 13:39
반응형

두 날짜 사이 일수 구하기

SELECT ABS(DATEDIFF('2020-01-01','2020-02-01'))+1

두 날짜 사이 주말 일수 구하는 함수

CREATE FUNCTION F_TOTAL_WEEKDAYS(date1 DATE, date2 DATE)
RETURNS INT
RETURN ABS(DATEDIFF(date2, date1)) + 1
        - ABS(DATEDIFF(ADDDATE(date2, INTERVAL 1 - DAYOFWEEK(date2) DAY),
                       ADDDATE(date1, INTERVAL 1 - DAYOFWEEK(date1) DAY))) / 7 * 2
        - (DAYOFWEEK(IF(date1 < date2, date1, date2)) = 1)
        - (DAYOFWEEK(IF(date1 > date2, date1, date2)) = 7);

SELECT F_TOTAL_WEEKEND('2020-01-01','2020-02-01')

두 날짜 사이 평일 일 수 구하기

SELECT ABS(DATEDIFF('2020-01-01','2020-02-01'))+1 
       - F_TOTAL_WEEKEND('2020-01-01','2020-02-01')
반응형