본문 바로가기

Story/oracle

[스크랩] [db]줏어옴.. 달력만들기 쿼리

반응형

제     목   날짜 관련 쿼리 입니다. 한달을 요일별로 구함.. 추 천 수   16
조 회 수   3927 작 성 일   2003-12-29 작 성 자   김정식
SELECT SUM(DECODE(A.A2, '1', A.A3, null)) 일요일,
       SUM(DECODE(A.A2, '2', A.A3, null)) 월요일,
       SUM(DECODE(A.A2, '3', A.A3, null)) 화요일,
       SUM(DECODE(A.A2, '4', A.A3, null)) 수요일,
       SUM(DECODE(A.A2, '5', A.A3, null)) 목요일,
       SUM(DECODE(A.A2, '6', A.A3, null)) 금요일,
       SUM(DECODE(A.A2, '7', A.A3, null)) 토요일
FROM
   ( SELECT rownum + 7 - to_number(TO_CHAR(TO_DATE('200312' || TO_CHAR(rownum),'YYYYMMDD'),'D')) as A1,
            TO_CHAR(TO_DATE('200312' || TO_CHAR(rownum), 'YYYYMMDD'), 'D') as A2,
            rownum as A3
     FROM user_objects
     WHERE rownum <= 31
       AND rownum > 0
       And TO_CHAR(LAST_DAY(TO_DATE('200312' || '01', 'YYYYMMDD')), 'DD')>= LTRIM(TO_CHAR(rownum, '00'))
   ) A
GROUP BY A.A1
 
 
일요일     월요일     화요일     수요일     목요일     금요일     토요일
------ ---------- ---------- ---------- ---------- ---------- ----------
                   1           2              3           4          5          6
     7             8           9            10          11         12         13
    14           15         16             17          18         19         20
    21           22         23             24          25         26         27
    28           29         30             31
 
 
www.en-core.com 에 이추형님의  글 입니다.
- svrgmrl [2004-03-19] : 오~~ select 로 이런.. 이햐.. 감탄입니다.. 예술의 극치입니다..
- 행인1 [2004-05-18] : 좋기는 한데 user_objects에 데이타가 없으면 쿼리 안됨
- 행인1 [2004-05-18] : 무의미한 테이블을 create table calendar(test char(1)) 를 만든다음 데이타를 31개 이상 만들어서 테이블을 calendar로 하셔도 됩니다.^^ 
- 질문이요 [2004-06-10] : TO_CHAR에서 뒤에 D 만 준것은.. 무엇을 말하는 거에요?
- 황태원 [2004-06-21] : TO_CHAR(...,'D')라고 준것은 날짜 포맷입니다. Data의 Type을 변환 할 때 쓰는 것이죠. 날짜형을 문자형으로 변환 한다던가, 문자형을 날짜형으로 변환 할 때 씁니다. 여기서 'D'는 해당일의 요일을 숫자로 변환 한 겁니다. 즉, 일요일은 1, 월요일은 2...토요일은 7 이렇게요. 포맷을 'DAY'로 준다면 이건 요일로 변환 합니다. 위 달력을 예로 들면 4일은 '목요일', 17일은 '토요일'이 되겠죠. 
- 루이스 [2004-07-06] : ㅡㅡㅋ이런 짓을.. 대단하오!! 그냥 달력보세염 
- 나그네 [2004-08-04] : 멋집니다... ^^ 
원본 : [db]줏어옴.. 달력만들기 쿼리
반응형