"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > MySQL에서 두 날짜 사이의 데이터를 올바르게 선택하는 방법은 무엇입니까?

MySQL에서 두 날짜 사이의 데이터를 올바르게 선택하는 방법은 무엇입니까?

2024년 11월 26일에 게시됨
검색:169

How to Properly Select Data Between Two Dates in MySQL?

두 날짜 사이에 MySQL 데이터베이스에서 데이터 선택

MySQL에서 특정 날짜 범위 내의 데이터를 검색하면 날짜를 저장할 때 일반적인 문제가 발생합니다. 날짜/시간 값으로. >= 및

created_at 열이 ' 사이에 있는 레코드를 선택하려는 시나리오를 고려해보세요. 2011-12-01' 및 '2011-12-06'. 다음 쿼리를 실행하면 놀랍게도 '2011-12-06 10:45:36':

SELECT `users`.* FROM `users` 
WHERE created_at >= '2011-12-01' 
AND created_at 

이유는 MySQL이 종료 날짜를 자정('2011-12-06 00:00:00')으로 해석하여 해당 날짜 이후에 생성된 레코드를 효과적으로 제외하기 때문입니다. . 원하는 레코드를 선택하려면 종료 날짜를 '2011-12-07'로 수정하세요.

SELECT `users`.* FROM `users` 
WHERE created_at >= '2011-12-01' 
AND created_at 

또는 DATE_ADD()를 사용하여 시작 날짜에 일수를 추가하고 원하는 종료 날짜를 포함하는 간격을 만듭니다.

SELECT `users`.* FROM `users` 
WHERE created_at >= '2011-12-01' 
AND created_at 

가독성 향상을 위해 BETWEEN 연산자를 활용할 수 있습니다:

SELECT `users`.* FROM `users` 
WHERE created_at BETWEEN('2011-12-01', DATE_ADD('2011-12-01', INTERVAL 7 DAY))

종료 날짜를 조정하거나 DATE_ADD() 함수를 사용하면 정확하게 선택할 수 있습니다. 지정된 날짜 범위의 데이터를 수집하여 의도한 종료 날짜에 생성된 모든 기록이 캡처되도록 합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3