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 40142 게시물 읽기
No. 40142
마농님 한번만 더 부탁드려요
작성자
조기영
작성일
2013-05-23 11:03
조회수
6,439

 A라는 개인 근태 테이블이 있고, 

테이블 구성은

    - 근태일

    - 직원id 

    - 근태구분

 

1. 여기서 직원중 연속적으로 출근을 한 사람을 알수 있는 방법이 있을까요?

2. 2틀이상 출근기록을 알수 있을까요? 

     김길동 2013년 1월 3일 ~ 2013년 1월 5일 (3일간)

     김길동 2013년 1월 7일 ~ 2013년 1월 10일(4일간)

     박길동 2013년 1월 3일 ~ 2013년 1월 9일(7일)

     ...

항상 고맙고~ 행복하세요~

 

 

 

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

WITH TEST AS (
SELECT 'A군' USERID, '20130301' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'A군' USERID, '20130302' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'B군' USERID, '20130301' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'B군' USERID, '20130302' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'B군' USERID, '20130304' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'A군' USERID, '20130303' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'A군' USERID, '20130304' WORKDAY, '1' DVS FROM DUAL UNION ALL
SELECT 'A군' USERID, '20130307' WORKDAY, '1' DVS FROM DUAL

)
SELECT USERID
     , MIN ( WORKDAY)
     , MAX ( WORKDAY )
     , COUNT(*)
  FROM ( SELECT *
           FROM TEST
          ORDER BY USERID, WORKDAY
       )
 GROUP BY USERID, TO_DATE ( WORKDAY, 'YYYYMMDD' ) - ROWNUM

채용근(taiji97)님이 2013-05-23 11:19에 작성한 댓글입니다.

 아 이런 방법이 있었군요~ 좋은 해결책 배워가요~ 

 

좋은 하루 되세요~

조기영님이 2013-05-23 13:34에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
40146대형 프로젝트에서 DB 구조...
홍순우
2013-05-27
6531
40144유니크하고 랜덤한 일련번호 처리 [4]
초심
2013-05-24
7344
40143group by 절에 대한 질문이요 ㅜㅜ [4]
짱먹었어
2013-05-24
6781
40142마농님 한번만 더 부탁드려요 [2]
조기영
2013-05-23
6439
40141원인을 잘못찾겠습니다..조언부탁드립니다. [1]
새하정
2013-05-22
7049
40139PARTITION BY 로 기준이 같을때 [1]
김우
2013-05-21
6998
40138조건에 따른 조인시 질문입니다. [3]
백호
2013-05-21
6657
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다