쿼리 질문입니다. 0 6 1,358

by 쩌링짱 [SQL Query] [2015.07.07 13:34:40]


안녕하세요. 개발자에게 위에 내용대로 수정 요청드렸는데 계속 어렵다고 힘들다고 해서

정말 힘든건지 궁금한점이 있으나 해답을 찾지 못해 고수님들의 도움을 받고자 합니다.

내용: 2015-07-01일을 기점으로 단일지점이었던 A지점 안에서 분할하여 B지점이 생성되어 두지점이 되었습니다.

A지점에서 일하는 일부 사람들의 소속이동과 그에 따른 계약들도 B지점으로 이동되었습니다. 

이렇게 되면  2015-06월달의 매출을 확인해보면 B지점으로 넘어간 소속과 계약때문에 그시점에 없었던 B지점의 매출집계가 보여지게 됩니다.

제가 궁금한것은 2015-07-01 이전에 계약의 합계는 A지점으로 포함시키게 되고 2015-07-01 이후에 데이터는 B지점 계약합계로 보여줄 수 있을것 같은데 간단하게 쿼리로 알려주시면 감사하겠습니다.

 

 

  

 

 

 

 

by 마농 [2015.07.07 14:06:47]

데이터를 이력관리(시작일,종료일)를 하지 않고 단순 업데이트(A->B)했다면 불가능합니다.
물론 하드코딩 한다면 가능하겠지요? 그러나 그건 아니라고 봅니다.
이력관리를 했다고 하더라도 상당히 복잡한 문제입니다.
사원, 사원소속이동정보, 소속정보, 계약정보, 매출정보 등등이 유기적으로 연결되어야 하는 문제입니다.


by 쩌링짱 [2015.07.07 14:39:32]

감사합니다^^


by 개발뉴비 [2015.07.07 14:15:53]
-- 이렇게 해도 괜찮을지 모르겠네요...
-- 조회 해보시고 데이터 확인이 필요할 것 같습니다
SELECT 'A' AS "지점", SUM("매출") "매출"
  FROM T
 WHERE DD < '20150701'
UNION ALL
SELECT "지점", SUM("매출") "매출"
  FROM T
 WHERE DD >= '20150701'
 GROUP BY "지점";

by 쩌링짱 [2015.07.07 15:00:38]

감사합니다^^


by jkson [2015.07.07 15:06:58]

사원의 부서 히스토리 테이블이 따로 있다면 가능하겠으나 이러한 상황이 고려되지 않은 채로 히스토리 테이블 없이 시스템이 운영되어왔다면 모든 통계 쿼리에 히스토리 테이블을 추가하여 조인시켜줘야 합니다. 굳이 하고자 한다면 가능은 하겠지만.. 시스템 크기가 크고 통계물이 많다면 소요일수가 오래 걸리겠죠. 히스토리 테이블을 따로 만들어서 관리하기 어렵다면 사원 아이디를 7월부로 하나 더 만드는 건 어떨까요? 예를 들어 (사번 00001 홍길동, 부서:A) 였다면 (사번 00001A, 부서:B)를 만들어서 7월 부터는 00001A만 사용한다든지.. 여튼 어떻게든 방법이야 있겠지만 쉬운 일은 아니겠네요.


by 쩌링짱 [2015.07.07 15:49:15]

네 감사합니다^^ 편법보다는 지금이라도 정상적으로 가는게 맞을꺼같습니다 조언감사합니다^^

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