근태 테이블에 컬럼이 이름, 사번,출근시간,퇴근시간,총근무시간, 야근시간
이렇게 있습니다
출근 버튼을 눌렀을때 이름 사번 출근시간이 들어가고
퇴근 버튼을 눌렀을때 퇴근시간이 업데이트 되면서
총 근무시간 컬럼에는 데이터를 출근시간+퇴근시간의 결과값으로 넣고 싶은데
가능할까요??
Comment 3
-
윤군놀자5935
2022.09.28 14:30
-
nattienattie
2022.09.28 22:40
답변 감사합니다! 실행 해보니까 누락된 표현식이라고 오류가 뜨는데 아무리 봐도 잘못된 부분을 못찾아서요ㅠ 혹시 제가 날짜 값들을 다 timeStamp로 설정해둬서 안되는 걸까요?
-
윤군놀자5935
2022.09.30 16:20
오라클 이시네요 ㅎㅎ
오라클하고 MSSQL은 함수명과 문법이 살짝 다릅니다.
UPDATE 근태테이블
SET 퇴근시간 = SYSDATE
, 총근무시간 = (SYSDATE - 출근시간)*24*60
, 야근시간 = ((SYSDATE - 출근시간)*24*60) - 540
WHERE 사번 = 직원사번
AND 출근시간 >= TRUNC(SYSDATE)
AND 퇴근시간 IS NULL오라클 장비가 없어서 검증 된 쿼리는 아닙니다.
오라클을 안쓴지 좀 되어서 가물가물 합니다.
UPDATE 근태테이블
SET 퇴근시간 = GETDATE()
, 총근무시간 = DATEDIFF(MINUTE, 출근시간, GETDATE())
, 야근시간 = DATEDIFF(MINUTE, 출근시간, GETDATE()) - 540
WHERE 사번 = 직원사번
AND 출근시간 >= CONVERT(DATE, GETDATE())
AND 퇴근시간 IS NULL
이름 컬럼은 사원테이블에 있어야 하고 근태테이블에 있을 컬럼은 아닌것 같고요.
새벽까지 근무에서 퇴근일이 출근일이 다를경우는 처리 하지 않았습니다.
반차로 하루 근무시간이 8시간이 안되는 경우도 처리하지 않았습니다