문제:
MySQL에서 두 날짜 필드 사이의 월 수 확인 일반적인 작업입니다. 그러나 Unix 타임스탬프와 수동 계산을 사용하는 것은 번거로울 수 있습니다.
해결책:
TIMESTAMPDIFF() 함수:
MySQL 월 차이를 단순화하는 TIMESTAMPDIFF() 함수를 제공합니다. 계산. 구문은 다음과 같습니다.
TIMESTAMPDIFF(unit, startdate, enddate)
여기서:
예:
SELECT TIMESTAMPDIFF(MONTH, '2012-05-05', '2012-06-04') -- Outputs: 0 SELECT TIMESTAMPDIFF(MONTH, '2012-05-05', '2012-06-05') -- Outputs: 1
정밀도를 사용한 월 차이:
소수점 정밀도를 사용하여 월 차이를 계산하려면 다음 공식을 사용하세요.
TIMESTAMPDIFF(MONTH, startdate, enddate) + DATEDIFF(enddate, startdate + INTERVAL TIMESTAMPDIFF(MONTH, startdate, enddate) MONTH) / DATEDIFF(startdate + INTERVAL TIMESTAMPDIFF(MONTH, startdate, enddate) + 1 MONTH, startdate + INTERVAL TIMESTAMPDIFF(MONTH, startdate, enddate) MONTH)
이 공식은 일수와 도약을 보상합니다.
예:
startdate = '2012-05-05', enddate = '2012-05-27' -- Outputs: 0.7097 startdate = '2012-05-05', enddate = '2012-06-13' -- Outputs: 1.2667 startdate = '2012-02-27', enddate = '2012-06-02' -- Outputs: 3.1935
TIMESTAMPDIFF() 함수와 정밀도 공식을 사용하면 MySQL에서 날짜 간의 월 차이를 쉽게 계산할 수 있습니다.
위 내용은 MySQL에서 두 날짜 간의 월 차이를 효율적으로 계산하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!