해당 연도의 모든 일자 출력하는 방법 0 3 899

by hun [SQL Query] mysql [2019.10.31 11:38:18]


캡처.PNG (5,088Bytes)

안녕하세요.

MariaDB에서 해당 연도에 모든 일자를 아래와 같이 출력할려고 하는데 전혀 어떻게 해야할 지 몰라서 질문드립니다.

예를들어 첫 번째 사진처럼 2020년이면 2020-01-01 00:00:00 부터 2020-12-31 00:00:00으로 출력하고 싶습니다.

오라클에서는 아래처럼 사용하였는데 MariaDB에서는 어떻게 해야할지 전혀 모르겠습니다...ㅠㅠ

            SELECT TRUNC(ADD_MONTHS(TO_DATE('2020', 'YYYY'), 0), 'YY') - 1 + LEVEL AS MYDATE
            FROM DUAL
            CONNECT BY LEVEL <
                       (SELECT TRUNC(ADD_MONTHS(TO_DATE('2020', 'YYYY'), 0), 'YY')
                                   - TRUNC(ADD_MONTHS(TO_DATE('2020', 'YYYY'), -12), 'YY')
                        FROM DUAL)

 

by 우리집아찌 [2019.10.31 13:00:43]

 CTE 조회해보세요


by DarkBee [2019.10.31 13:24:17]
SELECT date_
  FROM (
            SELECT STR_TO_DATE ( '20200101', '%Y%m%d' ) + INTERVAL @rownum DAY date_
                 , @rownum := @rownum + 1
              FROM information_schema.TABLES a
                 , ( SELECT @rownum := 0 )   b
 ) a
 WHERE DATE_FORMAT( date_, '%Y' ) = '2020'
 
  

개인적으론 날짜테이블을 만드시는걸 추천드립니다.

 


by 마농 [2019.11.01 01:25:47]
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입