조회 수 7666 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

-- 입력된 월 기준

SELECT

        ADDDATE(A.SETMONTH, LEVEL -1) AS DT,

        TO_CHAR(ADDDATE(A.SETMONTH, LEVEL -1), 'DAY') AS SW,

        CONCAT(DENSE_RANK() OVER(ORDER BY TRUNC(ADDDATE(A.SETMONTH, LEVEL -1), 'DAY')), ' 주차') AS MBWK

FROM (

        SELECT

                TO_DATE('201601','YYYYMM') AS SETMONTH

) A

CONNECT BY LEVEL <= EXTRACT(DAY FROM LAST_DAY(A.SETMONTH))


결과>


2016-01-01 금요일       1 주차

2016-01-02 토요일       1 주차

2016-01-03 일요일       2 주차

2016-01-04 월요일       2 주차

2016-01-05 화요일       2 주차

2016-01-06 수요일       2 주차

2016-01-07 목요일       2 주차

2016-01-08 금요일       2 주차

2016-01-09 토요일       2 주차

2016-01-10 일요일       3 주차

2016-01-11 월요일       3 주차

2016-01-12 화요일       3 주차

2016-01-13 수요일       3 주차

2016-01-14 목요일       3 주차

2016-01-15 금요일       3 주차

2016-01-16 토요일       3 주차

2016-01-17 일요일       4 주차

2016-01-18 월요일       4 주차

2016-01-19 화요일       4 주차

2016-01-20 수요일       4 주차

2016-01-21 목요일       4 주차

2016-01-22 금요일       4 주차

2016-01-23 토요일       4 주차

2016-01-24 일요일       5 주차

2016-01-25 월요일       5 주차

2016-01-26 화요일       5 주차

2016-01-27 수요일       5 주차

2016-01-28 목요일       5 주차

2016-01-29 금요일       5 주차

2016-01-30 토요일       5 주차

2016-01-31 일요일       6 주차


-- 입력된 두개의 날짜 기준

SELECT

        ADDDATE(A.ST_DAY, LEVEL - 1) AS DT,

        TO_CHAR(ADDDATE(A.ST_DAY, LEVEL - 1), 'DAY') AS SW,

        CONCAT(TO_CHAR(ADDDATE(A.ST_DAY, LEVEL - 1), 'YYYY'), ' ', TO_CHAR(ADDDATE(A.ST_DAY, LEVEL - 1), 'MM'), ' ', DENSE_RANK() OVER(PARTITION BY MONTH(ADDDATE(A.ST_DAY, LEVEL - 1)) ORDER BY TRUNC(ADDDATE(A.ST_DAY, LEVEL - 1), 'DAY')), ' 주차') AS MBWK

FROM (

        SELECT

                TO_DATE('2016-08-01') AS ST_DAY,

                TO_DATE('2016-08-09') AS ED_DAY

) A

CONNECT BY

        LEVEL <= DATEDIFF(ED_DAY, ST_DAY)


결과>


2016-08-01 월요일       2016년 08월 1 주차

2016-08-02 화요일       2016년 08월 1 주차

2016-08-03 수요일       2016년 08월 1 주차

2016-08-04 목요일       2016년 08월 1 주차

2016-08-05 금요일       2016년 08월 1 주차

2016-08-06 토요일       2016년 08월 1 주차

2016-08-07 일요일       2016년 08월 2 주차

2016-08-08 월요일       2016년 08월 2 주차



  • ?
    성진 2016.08.10 03:15

     입력된 두개의 날짜 기준에는 버그가 있네요;; (동일 월에만 가능합니다.)


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
262 응용개발 CUBRID 와 DBCP의 관계 엄기호 2016.12.14 4733
» 질의작성 입력된 년월 또는 두개의 날짜을 이용하여 달력 및 주차 구하기 1 성진 2016.08.10 7666
260 운영관리 큐브리드 포트 정리 정만영 2016.07.05 7971
259 운영관리 큐브리드 마스터 소켓 디렉토리 변경방법 정만영 2016.07.05 5404
258 응용개발 Windows 환경에서 JAVA SP 사용 utf-8 한글 깨짐 해결 file 손승일 2016.07.01 5768
257 질의작성 INSTR함수 사용하기 엄기호 2016.06.29 11106
256 질의작성 group_concat(문자열 그룹처리) 함수 사용하기 권호일 2016.06.29 30741
255 질의작성 두 datetime 연산결과를 "?일 ?시:?분:?초"로 표시하기 권호일 2016.05.18 7682
254 운영관리 Invalid XASL tree node content 에러 손승일 2016.04.26 5852
253 질의작성 ORACLE 테이블 및 컬럼 COMMENT 일광등록 스크립트 1 김창휘 2016.04.04 10571
252 응용개발 Windows에서 32bit 버전의 PHP 설치 후 CUBRID와 연동 실패 시 해결 방법 file 진우진 2016.03.28 5736
251 CUBRID 매니저 큐브리드 매니저 호스트 접속 시 JDBC 드라이버 찾을 수 없는 오류 해결 1 file 진우진 2016.03.28 7951
250 질의작성 스키마 및 인덱스 선언에 따른 최대 용량 산정을 위한 ROW SIZE 확인 성진 2016.03.21 5244
249 질의작성 Oracle UTL_ENCODE.TEXT_ENCODE를 CUBRID로 변환하기 김창휘 2016.03.21 5699
248 질의작성 테이블 리스트 취합 SQL 김창휘 2016.03.19 6739
247 운영관리 산술 연산 결과를 피젯수 또는 젯수의 자리 수에 맞춰 보자. 성진 2016.03.01 5871
246 질의작성 테이블 컬럼 변경 및 추가 정만영 2016.02.29 26264
245 마이그레이션 CMT를 이용하여 원본 특정 테이블의 일부 데이터만 가져와 대상 테이블에 넣기 엄기호 2016.01.28 5652
244 질의작성 FOR UPDATE 정만영 2016.01.27 7029
243 운영관리 'Has been interrupted.' CUBRIDException 발생 주현 2016.01.07 7987
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15

Contact Cubrid

영업문의 070-4077-2112 / 기술문의 070-4077-2148 / 대표전화 070-4077-2110 / Email. contact_at_cubrid.com
Contact Sales

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

나눔고딕 사이트로 가기

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5