UPDATE를 ROWNUMBER로 하고 싶습니다. 0 1 132

by SQL모험가 [2021.10.12 13:19:30]


현재 운영중인 데이터베이스는 ORACLE 11G이고,

하고자 하는것은 다음과 같습니다.

일자 부서 순서
20211001 1 null
20211001 1 null
20211001 2 null
20211001 2 null
20211001 3 null
20211002 1 null
20211002 1 null

설명을 드리자면 현재 시스템에서는 각 일자별 및 부서별로 해서 출근하는대로 순서라는 컬럼에 자동적으로 할당이 된다고 합니다.

2021년 10월 1일 에 1부서의 출근자가 출근하면 1, 그 다음에 1 부서의 다른 누군가가 출근하면 2 이렇게요

1부서가 출근했어도 2부서는 2부서 근무자중 누군가가 출근하면 1 이렇게 할당됩니다.

그리고 다음날 되면 다시 초기화 되어서 2021년 10월 2일에 1부서 누군가 출근하면 1, 1부서의 다른 누군가가 출근하면 2

요렇게 반복된다고 합니다.

지금 수정해야 하는 상황이

1. 저 테이블의 내역이 순서가 NULL인 애들만 뽑아서

2. 그룹별로(날짜와 부서) 순서 컬럼에 순번을 할당하려고 합니다.

 

되게 간단할거 같은데 잘 안되어서 ㅠ

3시간 이상 시도하고 있는 중입니다.

질문을 드립니다.

by 마농 [2021.10.12 13:33:17]

1. 일자만 표시되어 있는데? 시간 정보도 있는 거겠죠?
 - 일자 항목의 데이터 타입과 저장 형태가 어찌 되는지?
2. PK 정보는 어떻게 되나요?
3. MERGE 구문을 이용하면 좋을 듯 합니다.
4. 순서에 대한 입력 로직이 추가로 구현된 것이고
- 로직 구현 이전 자료에 대한 업데이트라면?
- NULL 인 것을 대상으로 하기 보다는 특정일자 이전 조건으로 작업하는게 좋을 듯 합니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입