>데이터 베이스 >MySQL 튜토리얼 >별도의 일, 월, 연도 필드에서 MySQL의 DATE 개체를 어떻게 생성할 수 있습니까?

별도의 일, 월, 연도 필드에서 MySQL의 DATE 개체를 어떻게 생성할 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-23 04:57:37373검색

How Can I Create a DATE Object in MySQL from Separate Day, Month, and Year Fields?

MySQL의 일, 월, 연도 필드에서 날짜 개체 생성

별도의 '날짜' 테이블이 포함된 데이터베이스 스키마 '일', '월', '년' 필드를 사용하려면 비교를 위한 날짜 개체를 만들어야 합니다. 이 문서에서는 이러한 정수 값으로 날짜 개체를 구성하는 솔루션을 간략하게 설명합니다.

MAKEDATE() 및 DATE_ADD() 함수를 사용하면 연도, 월, 일 구성 요소에서 DATETIME을 생성할 수 있습니다. MAKEDATE()는 지정된 연도의 첫 번째 날을 나타내는 DATETIME을 생성합니다. 이후에 DATE_ADD()를 적용하여 월 및 일 값을 추가할 수 있습니다.

예:

SELECT MAKEDATE(2013, 1);
+-------------------+
| MAKEDATE(2013, 1) |
+-------------------+
| 2013-01-01        |
+-------------------+

월 및 일 값을 통합하려면:

SELECT DATE_ADD(MAKEDATE(2013, 1), INTERVAL (3)-1 MONTH);
+---------------------------------------------------+
| DATE_ADD(MAKEDATE(2013, 1), INTERVAL (3)-1 MONTH) |
+---------------------------------------------------+
| 2013-03-01                                        |
+---------------------------------------------------+

여러 DATE_ADD() 호출을 결합하면 정확한 날짜 구성이 가능합니다.

SELECT DATE_ADD(DATE_ADD(MAKEDATE(2013, 1), INTERVAL (3)-1 MONTH), INTERVAL (11)-1 DAY);
| DATE_ADD(DATE_ADD(MAKEDATE(2013, 1), INTERVAL (3)-1 MONTH), INTERVAL (11)-1 DAY) |
+----------------------------------------------------------------------------------+
| 2013-03-11                                                                       |
+----------------------------------------------------------------------------------+

실행하려면 이 기술을 사용한 날짜 범위 쿼리:

SELECT * FROM `date`
WHERE DATE_ADD(DATE_ADD(MAKEDATE(year, 1), INTERVAL (month)-1 MONTH), INTERVAL (day)-1 DAY)
BETWEEN '2013-01-01' AND '2014-01-01';

위 내용은 별도의 일, 월, 연도 필드에서 MySQL의 DATE 개체를 어떻게 생성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.