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
운영게시판
최근게시물
Oracle Q&A 41290 게시물 읽기
No. 41290
영업일 구하는 함수 만들고 싶은데요 잘 모르겠네요..
작성자
박대종(pdj5025)
작성일
2016-11-29 19:10
조회수
6,162

일단 휴일 관리하는 테이블이 별도로 있습니다.

 

select

(select

dt_wk --영업일

from h_calendar

where dt_cal = '20161122') -

(select

dt_wk --영업일

from h_calendar

where dt_cal = '20161101') 영업일,

(select

dt_wk --영업일

from h_calendar

where dt_cal = '20161130') -

(select

dt_wk --영업일

from h_calendar

where dt_cal = '20161101') 당월영업총일,

(select

dt_wk --영업일

from h_calendar

where dt_cal = '20161130') -

(select

dt_wk --영업일

from h_calendar

where dt_cal = '20161122') 남은영업일

from dual;

 

이렇게 하면 되기는 하나 이걸로 다시 계산이 들어가야 하는데 그러면 너무 지저분해져서 함수로 처리 하고 싶습니다.

 

H_CALENDAR 이 테이블이 휴일테이블인데

dt_cal 해당 컬럼은 일자가 들어가는 필드이고(yyyyMMdd)이런식으로

dt_wk 해당 컬럼은 워킹데이가 1 2 3 이런식으로 들어가고 있습니다 그리고 휴일일경우에는 1 2 3 3 이런식으로 워킹데이가 증가하지 않습니다.

fg_cal 해당 컬럼이 H가 오게 되면 휴일로 되어 dt_wk값이 증가 하지 않습니다.

 

select dt_cal,dt_ac_wk,fg_cal

from h_calendar

where fg_cal not in ('h')

 

이렇게 하면 휴일없이 나오는데...

 

 

고수님들의 조언부탁드립니다.

 

 

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

질문이 있는데요...

 

만약 휴일이 아니었다가 갑자기 임시 휴일이 되면 새로 등록된 휴일 이후의 모든 날짜의 dt_wk를 전부 다 다시 계산하여 update 하나요?

 

만약 그렇다면 님이 사용하신 SQL이면 충분할 것으로 보입니다.

정 뭐하면 함수 만들어서 쓰셔도 되구요...

 

김흥수(protokhs)님이 2016-11-30 16:07에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41294윈도우10에 오라클10g를 설치할수있는 방법이 있나요? [1]
어렵다디비
2016-12-05
7102
41293아스키 문자만 보이게 할수 없나요?
바스통
2016-12-05
5760
41292XML APPENDCHILDXML or INSERTCHILDXML [1]
정회훈
2016-12-03
5902
41290영업일 구하는 함수 만들고 싶은데요 잘 모르겠네요.. [1]
박대종
2016-11-29
6162
41289오라클 조인과 ANSI 조인과 관련한 질문입니다.
김흥수
2016-11-28
6261
41288계층형 쿼리관련 질문입니다.... [1]
윤주호
2016-11-24
6749
41287일자별 전월, 당월, 증감 통계 쿼리 질문입니다. [4]
이담원
2016-11-24
7889
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다