본문 바로가기

Programming/DB

[mysql] 원하는 달의 날짜 목록만 서치시키는 쿼리문

mysql 쿼리문으로 데이터의 날짜가 아닌 현재달의 날짜 목록을 모두 뽑아오고 싶어서

검색을 해봤는데 조금 복잡하긴 하지만 이 쿼리가 딱 내가 원하는 형태의 데이터를 추출해준다


select a.Date as dtDate from 

(select curdate() - INTERVAL (a.a + (10 * b.a) + (100 * c.a)) DAY as Date from

(select 0 as a union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as a cross join

(select 0 as a union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as b cross join

(select 0 as a union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as c) a 

where a.Date between '2017-07-01' and LAST_DAY('2017-07-01') order by dtDate asc



출처: http://dyang34.tistory.com/entry/Mysql-전체-날짜-리스트-출력 [신문과 프로그래머.]


원래 출처에서는 order by 구문이 없어서 추가!