>데이터 베이스 >MySQL 튜토리얼 >함수를 사용하여 두 날짜 값 사이의 연도, 월, 일 차이를 어떻게 반환할 수 있나요?

함수를 사용하여 두 날짜 값 사이의 연도, 월, 일 차이를 어떻게 반환할 수 있나요?

王林
王林앞으로
2023-08-23 16:53:321105검색

함수를 사용하여 두 날짜 값 사이의 연도, 월, 일 차이를 어떻게 반환할 수 있나요?

아래와 같이 날짜 값을 매개 변수로 받아들이고 연도, 월, 일의 차이를 반환하는 함수를 만들 수 있습니다.

mysql> CREATE FUNCTION date_difference(Date1 DATE, date2 DATE) RETURNS VARCHAR(30)
   -> RETURN CONCAT(
   -> @years := TIMESTAMPDIFF(YEAR, date1, date2),IF (@years = 1, ' year, ', ' years, '),
   -> @months := TIMESTAMPDIFF(MONTH, DATE_ADD(date1, INTERVAL @years YEAR), date2),IF (@months = 1, ' month, ', ' months, '),
   -> @days := TIMESTAMPDIFF(DAY, DATE_ADD(date1, INTERVAL @years * 12 + @months MONTH), date2),IF (@days = 1, ' day', ' days')) ;
   Query OK, 0 rows affected (0.00 sec)

이제 날짜 값을 함수 date_difference

mysql> Select date_difference('2015-11-16','2016-12-17') AS Difference;
+------------------------+
| Difference             |
+------------------------+
| 1 year, 1 month, 1 day |
+------------------------+
1 row in set (0.00 sec)

에 매개 변수로 전달합니다. 위의 결과 집합은 다음과 같습니다. 함수에 대한 인수로 지정된 두 날짜 사이의 차이입니다.

위 내용은 함수를 사용하여 두 날짜 값 사이의 연도, 월, 일 차이를 어떻게 반환할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제