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 3438 게시물 읽기
No. 3438
db2 평일 구하기 질문드립니다
작성자
정상기(tobilife)
작성일
2016-10-17 12:16
조회수
3,525

안녕하세요

오라클만 사용하다 잘모르겠어서 질문 드립니다..

 

현재일(평일기준) - 일자 = 차이 일수

ex) 20161017 - 20161014 = 2

 

이렇게 표현되게 하고싶은데 어떻게해야할 지 모르겠습니다

 

도움 부탁드립니다..

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

두 날짜사이의 평일이 몇일인지 구하는걸 말씀하시는건지요?

오라클 호환모드로 사용중이시면 아래 글 처럼 오라클과 동일하게 사용하실 수 있습니다.

http://database.sarang.net/?inc=read&criteria=oracle&subcrit=qna&aid=38441

 

호환모드가 아니라면 CONNECT BY 절을 사용할 수 없으므로 WITH문으로 계층쿼리를 사용하는 방법이 있습니다.

인터넷을 뒤져서 아래와 같이 흉내내서 만들어 보았습니다.

WITH DateRange(dt,lvl) AS
(
SELECT TO_DATE('20161014','yyyymmdd') AS dt, 1 FROM sysibm.sysdummy1
UNION ALL
SELECT dt + 1 day AS dt, lvl+1 FROM DateRange WHERE lvl < TIMESTAMPDIFF(16,TO_DATE('20161017','yyyymmdd')-TO_DATE('20161014','yyyymmdd')) + 1
)
SELECT A.dt FROM DateRange A
WHERE TO_CHAR(A.dt,'D') NOT IN (1,7)
 
결과
 
DT
--------------------------
SQL0347W  The recursive common table expression "DB2I101.DATERANGE" may
contain an infinite loop.  SQLSTATE=01605
 
2016-10-14-00.00.00.000000
2016-10-17-00.00.00.000000
 
  2 record(s) selected with 1 warning messages printed.
 
정상규(pajama)님이 2016-10-18 12:21에 작성한 댓글입니다.

 정말 감사합니다..

잘동작하고 원하는결과가 나옵니다..

더욱 정진해서 저도 도움되는 사람이 되겠습니다

좋은하루되세요^^

정상기(tobilife)님이 2016-10-18 16:41에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
3441DB2 WIN7에 설치 [1]
홍민가
2016-12-22
2960
3440DB2 ODBC WINDOWS 관련하여.. [1]
초보DBA
2016-12-12
3075
3439db2 install directory mount 변경 질문 [3]
구광모
2016-10-28
3765
3438db2 평일 구하기 질문드립니다 [2]
정상기
2016-10-17
3525
3437db2 odbc 관련 [9]
초보DBA
2016-10-11
4530
3434user_objects 관련.. [2]
초보DBA
2016-09-06
3245
3433as400 버전업후 VB6.0에서 필드 소숫점이 사라지네요.
help
2016-08-15
3348
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다