MySQL SELECT 문을 사용하여 날짜 범위 가져오기
많은 애플리케이션에는 지정된 범위 내의 날짜 목록을 검색하는 기능이 필요합니다. MySQL에는 이를 달성하는 여러 가지 방법이 있으며 그 중 하나는 SELECT 문을 사용하는 것입니다.
예를 들어 2012년 2월 10일부터 2012년 2월 15일 사이의 모든 날짜를 나열해야 합니다. 이렇게 하려면 다음 쿼리를 사용할 수 있습니다.
<code class="language-sql">SELECT * FROM (SELECT ADDDATE('1970-01-01',t4.i*10000 + t3.i*1000 + t2.i*100 + t1.i*10 + t0.i) selected_date FROM (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t0, (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t1, (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t2, (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t3, (SELECT 0 i UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t4) v WHERE selected_date BETWEEN '2012-02-10' AND '2012-02-15'</code>
이 쿼리는 중첩된 SELECT 문을 사용하여 '1970-01-01'부터 현재 날짜까지의 날짜 범위를 생성합니다. 그런 다음 생성된 날짜를 지정된 범위로 제한합니다.
이 접근 방식의 장점은 구현이 상대적으로 간단하고 향후 최대 300년까지 날짜 범위를 처리할 수 있다는 것입니다.
위 내용은 MySQL 선택 쿼리를 사용하여 날짜 범위를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!