근태조회문의 드립니다.

다은빈아빠 2014.06.03 09:25 Views : 3591

nEventLogIdn nDateTime nReaderIdn nEventIdn nUserID nIsLog nTNAEvent nIsUseTA nType

2001613

1401784173

32166

55

183

0

0

0

0

2000546

1401663527

32166

55

183

0

1

0

0

2000346

1401611581

32166

55

183

0

0

0

0

2000113

1401526007

32166

55

183

0

0

0

0

1999986

1401490693

32165

55

183

1

1

0

0

1999635

1401439378

32166

55

183

0

0

0

0

1999497

1401397114

32166

55

183

0

0

0

0

1999301

1401352654

32166

55

183

0

0

0

0

위와같이 데이터가 있을 경우 nDateTime 가 출퇴근시간이고 출근일 경우 nTNAEvent 가 0 퇴근일 경우 1 이 됩니다.

단지 출근이나 퇴근기록이 여러개가 있을수 있어 출근은 nDateTime 가 같은날 최소값일때 퇴근은 최대값일때로 뽑아야 합니다.

문제는 주간 야간 2교대로 되어있어서 만약 nTNAEvent가 0인데 시간이 17시 보다 크면 야간조로 판단해서

다음날 09시 이전에 최대 nDateTime으로 해서 퇴근을 조회하고 싶습니다. 정리하자면 아래 표와 같습니다.

Nuserid ADATE

nTNAEvent1

STIME

nTNAEvent2

ETIME

183

2014-05-31

0

08:46:47

1

08:46:47

183

2014-05-30

0

08:42:58

1

22:58:13

183

2014-05-29

0

08:37:34

1

20:58:34

183

2014-05-28

0

08:54:25

1

20:59:26

183

2014-05-27

0

08:32:40

1

22:58:05

183

2014-05-26

0

08:51:05

1

21:00:09

183

2014-05-24

0

08:47:22

1

20:58:39

 

부족한 쿼리는 아래 처럼 했지만 주야간구분과 nTNAEvent1,nTNAEvent2를 어떻게 처리해야 될지 헤매고 있습니다.

 

SELECT Nuserid

, CONVERT(CHAR(10), DATEADD(s,ndatetime,'1970-01-01 00:00:00'), 121) ADATE

, MIN(SUBSTRING(CONVERT(VARCHAR(30),DATEADD(s,ndatetime,'1970-01-01 00:00:00'),121),12,8) ) STIME

, MAX(SUBSTRING(CONVERT(VARCHAR(30),DATEADD(s,ndatetime,'1970-01-01 00:00:00'),121),12,8) ) ETIME

FROM TB_EVENT_LOG  

WHERE nUserID=183 AND CONVERT(CHAR(10), DATEADD(s,ndatetime,'1970-01-01 00:00:00'), 121) BETWEEN '2014-01-01' AND '2014-05-31'

GROUP BY Nuserid,CONVERT(CHAR(10), DATEADD(s,ndatetime,'1970-01-01 00:00:00'), 121)

ORDER BY 2 DESC

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 24017
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 12458
7920 Option Recompile 에 대한 사이드이펙트가 있을까요? [4] 프리윈드 2014.06.07 3259
7919 쿼리점 만들어주셍 ㅠㅠ [1] 입문mysql 2014.06.06 2440
7918 증감수 다른 것으로 여쭤봐용 ㅜㅠ [2] 마힐링 2014.06.05 2738
7917 복합키와 대체키 성능관련하여 질문합니다. AceCarrot 2014.06.05 4579
7916 프로시저 작성중 [1] hhhh 2014.06.05 2240
7915 백분률 구할려고 하는데요. 쿼리좀 봐주세요. [4] ssunsori 2014.06.05 2902
7914 데이타가 좀 많아서 속도가 엄청 느려요,,,ㅜㅜ [2] 꼽냐™ 2014.06.05 2512
7913 인덱스 질문입니다. 희망나라 2014.06.03 2404
7912 테이블 가공 질문입니다.. 쿼리.. [3] 스타카토 2014.06.03 2586
7911 2008 버전에는 백분률 함수가 없나요? [2] ssunsori 2014.06.03 2665
7910 업데이트 방법... [2] 마힐링 2014.06.03 2292
» 근태조회문의 드립니다. [2] 다은빈아빠 2014.06.03 3591
7908 데이터 형식 ntext 및 varchar이(가) not equal to 연산자에서 호환되지 않습니다. [1] SQL은힘들다 2014.06.02 12851
7907 밑에 프로시저 재질문~ㅠ [2] 잉유 2014.06.02 2517
7906 MSSQL 2005에서 [1] 우잘쓰 2014.06.02 2994
7905 Disk Writing 성능 이슈 [6] 서지채 2014.06.02 3093
7904 프로시저 모니터링 관련 DMV 질문이요..(dm_exec_procedure_stats) [8] 쿨키이드 2014.06.02 3998
7903 저장프로시저 질문 [1] 잉유 2014.06.01 2227
7902 쿼리 질문 드립니다.. [2] 마약중독 2014.06.01 2322
7901 조인후 증감수? [4] 마힐링 2014.05.30 2719





XE Login