안녕하세요. 개발초짜입니다.
현재 데이터베이스를 mdb에서 mssql로 변경하고 있는데 크로스탭부분을 처리를 못하고 있는데요...
비슷한 소스들을 보고 변경해보고자 하지만 잘 안됩니다.
아시는 분께서는 좀 답변좀 부탁드리겠습니다.
내용은
테이블명 : timecheck, username, code
3개를 조인해서 날짜를 입력받아 피벗통계로 뿌려주는 mdb 쿼리문인데 sql에서는 mdb처럼 쉽게 처리가 안되서요...
구조는 이렇습니다.
조건을 9월1일에서 3일로 출퇴근 내역을 보고싶다고 가정한다면
전체 사원이름이 스프레드에서 세로로 뿌려지고 날짜가 가로로 뿌려집니다. 출근, 퇴근시간이 값으로 표현되는 건데요
9월1일 9월2일 9월3일
월요일 화요일 수요일
홍길동 출근 08:20 08:30 08:40
퇴근 18:00 19:00 19:30
김대한 출근 08:10 08:15 08:50
퇴근 19:00 20:50 16:00
김민국 출근 07:00 08:15 07:20
퇴근 19:20 21:00 16:50
mdb의 쿼리문은 아래처럼 되있습니다.
TRANSFORM Last(Format([chhmmss],'hh:nn')) AS Expr1 " & _
SELECT UserName.UserID, TimeCheck.cTime " & _
FROM (TimeCheck LEFT JOIN Code ON TimeCheck.cTime = Code.CodeName) " & _
INNER JOIN UserName ON TimeCheck.cUser = UserName.UserID " & _
WHERE (((TimeCheck.cyymmdd) Between #" & TmpMon(0) & "# And #" & TmpMon(1) & "#)) " & _
GROUP BY UserName.UserID, UserName.USort, TimeCheck.cTime, Code.Code " & _
ORDER BY UserName.USort, Code.Code, Format([cyymmdd],'mm-dd')+Right(Format([cyymmdd],'Long Date'),3) " & _
PIVOT Format([cyymmdd],'mm-dd')+Right(Format([cyymmdd],'Long Date'),3)"
혹시 처리할 수 있는 sql문장이 어떻게 되는지 좀 부탁드리겠습니다. 꼭 좀 부탁드리겠습니다.
많은 답변 부탁드리겠습니다.
감사합니다.