중복 데이터 중 조건필드(이건 만들었습니다)에 따라서 최신 또는 최초 데이터를 가져오는 SQL문이 궁금합니다. 0 2 915

by 건방진천사 [SQL Query] sql query [2017.12.21 15:42:48]


고객별 실적을 확인하는것이 목적인데, 고객 코드가 중복 발생이 가능합니다.

조건1, 조건2 필드가 있고, 그 조건의 조합에 따라 중복된 고객 코드의

최초 날짜를 실적으로 볼 수도 있고, 최후 날짜를 실적으로 기재할 수도 있습니다.

어떤 로직을 짜야 이걸 할 수 있을지 통 모르겠네요,,

구문을 짜야 되니 아래와 같이 컬럼명을 예시로 적어보겠습니다.

기존 어떤 테이블에서 (CUST_TABLE이라고 하겠습니다.) 조건1,2까지만 있고,

그 테이블에 추가로 결과물을 삽입해도 되고, 별도 테이블을 만들어도 됩니다.

 

DATE / CUST_CODE / COND_1 / COND_2 / RESULT

20171101 / 11111111 / 1 / 1 / 1        <- 조건1,2가 모두 1인 경우는 최조 날짜를 실적으로 간주

20171102 / 11111111 / 0 / 1 / 0

20171103 / 11111112 / 1 / 0 / 0

20171114 / 11111112 / 0 / 0 / 1     <- 조건1,2가 모두 0인 경우는 최후 날짜를 실적으로 간주

 

 

by 마농 [2017.12.21 15:56:51]

설명이 모호합니다. 막연합니다.
예시가 부족합니다. 단순합니다.
빨간색 표시가 나오면 되는 건가요?
예시자료만 보면 그냥 조건이 (1,1) 이거나 (0,0)인 자료만 뽑으면 되네요.
설명을 보면 좀더 복잡할 것 같은데요?
예시자료를 좀더 복잡하게 설명과 일치하게 보강해서 만들어 주셔야 할 듯.
(1,1) 이 여러개 라든가?
(1,1) 이 최초가 아니라던가?
(1,1) 과 (0,0) 이 공존하는 고객은?


by 건방진천사 [2017.12.21 16:56:37]

회사 내용이 있어서 유출안 되게 하려고 많이 요약화했는데, 최대한 실제 data 가깝게 해서 다시 올려보겠습니다.

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