날짜 차이 계산에서 주말 제외: MySQL 솔루션
주말을 제외하고 두 날짜의 차이를 정확하게 계산하기 위해 MySQL 사용자는 종종 다음을 추구합니다. 안내. 표준 DATEDIFF 함수는 기본적인 날짜 차이에 유용하지만 주말을 생략해야 하는 경우에는 부족합니다.
이 문제를 해결하려면 WEEKDAY 함수를 사용하여 사용자 정의 함수를 생성할 수 있습니다. 방법은 다음과 같습니다.
CREATE FUNCTION 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);
이 함수는 여러 MySQL 함수를 사용합니다.
TOTAL_WEEKDAYS 함수는 이러한 함수를 결합하여 두 입력 날짜 간의 절대 차이를 계산하고 범위에서 토요일과 일요일 수를 빼고 범위의 시작과 끝의 요일을 조정합니다. .
사용 예:
주말을 제외하고 두 날짜의 차이를 계산하려면:
SELECT TOTAL_WEEKDAYS('2013-08-03', '2013-08-21') AS weekdays1, TOTAL_WEEKDAYS('2013-08-21', '2013-08-03') AS weekdays2;
결과:
| WEEKDAYS1 | WEEKDAYS2 | ------------------------- | 13 | 13 |
위 내용은 MySQL에서 주말을 제외한 날짜 차이를 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!