database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 1384 게시물 읽기
No. 1384
일년 중 토요일과 일요일의 날짜만 가져오려면?
작성자
jeje
작성일
2007-07-17 13:22
조회수
8,465



일년 중 토요일과 일요일의 날짜를 알아내고 싶습니다. 참고할만한 휴무정보 같은 테이블은 없구요.


DB2를 처음 쓰는데다 자료도 많이 없어 혼자 머리를 쥐어뜯다가 질문을 올립니다.
답변 부탁드릴께요~ 
감사합니다.

이 글에 대한 댓글이 총 2건 있습니다.

SELECT  DATE(N_DAY)             DT
       ,DAYOFWEEK(DATE(N_DAY))  WK
  FROM  (
    SELECT  DAYS(DATE('2007' || '-01-01')) +
            DG_1 + DG_2 + DG_3  N_DAY
      FROM
       (SELECT   0 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   1 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   2 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   3 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   4 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   5 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   6 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   7 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   8 DG_1 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT   9 DG_1 FROM SYSIBM.SYSDUMMY1) D1
      ,(SELECT   0 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  10 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  20 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  30 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  40 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  50 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  60 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  70 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  80 DG_2 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT  90 DG_2 FROM SYSIBM.SYSDUMMY1) D2
      ,(SELECT   0 DG_3 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT 100 DG_3 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT 200 DG_3 FROM SYSIBM.SYSDUMMY1 UNION ALL
        SELECT 300 DG_3 FROM SYSIBM.SYSDUMMY1) D3
     ) SEQ_0_399
 WHERE  N_DAY <= DAYS(DATE('2007' || '-12-31'))
   AND  DAYOFWEEK(DATE(N_DAY)) IN (1,7)
ORDER BY  DT

or

UDB(WIN,UNIX) 에서는

SELECT  DATE(N_DAY)             DT
       ,DAYOFWEEK(DATE(N_DAY))  WK
  FROM  (
    SELECT  DAYS(DATE('2007' || '-01-01')) +
            DG_1 + DG_2 + DG_3  N_DAY
      FROM  TABLE (VALUES 0,1,2,3,4,5,6,7,8,9)          T1 (DG_1)
           ,TABLE (VALUES 0,10,20,30,40,50,60,70,80,90) T2 (DG_2)
           ,TABLE (VALUES 0,100,200,300)                T3 (DG_3)
     ) SEQ_0_399
 WHERE  N_DAY <= DAYS(DATE('2007' || '-12-31'))
   AND  DAYOFWEEK(DATE(N_DAY)) IN (1,7)
ORDER BY  DT

박진복(pjb708)님이 2007-07-18 08:54에 작성한 댓글입니다.
이 댓글은 2007-07-18 13:17에 마지막으로 수정되었습니다.

이렇게 하면 되는군요. 아직 쿼리가 다 이해되지는 않지만(^^;) 원하는 결과가 나와 기쁩니다.
고맙습니다. 꾸벅

jeje님이 2007-07-18 10:02에 작성한 댓글입니다.
이 댓글은 2007-07-18 10:03에 마지막으로 수정되었습니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1387테이블스페이스관련 질문입니다.... [1]
DB2사랑
2007-07-20
8413
1386트리거안에서 Exception을 처리하려면?
jeje
2007-07-19
8287
1385테이블이름을 생성해 값을 구하고 싶습니다. [1]
하늘호수
2007-07-19
8069
1384일년 중 토요일과 일요일의 날짜만 가져오려면? [2]
jeje
2007-07-17
8465
1383파일내용 load시 한글이 깨져서 입력이 됩니다. [2]
하늘호수
2007-07-09
8734
1382파일내용 load시 일부항목이 삭제됨 [1]
하늘호수
2007-07-09
8379
1380대용량 select문 해결 방법 좀. [1]
parkgoon
2007-07-04
9217
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다