중복제거 0 4 2,267

by 송미진 [2007.09.07 09:23:02]


안녕하세요?

데이타가  아래와 같이 품목과 품번이 중복되어 조회될 때

품번과 품목의 중복값을 제거하고 둘중에 위에 나오는 값만을 출력하게 할  수가 있나요?

=====================================

품번  품목      수량  가격

=====================================

A      사과        3    1000

A      사과        4    1000

B      감귤        1    2000

C      복숭아     2    5000

C      복숭아     1    5000

=====================================

                      ↓↓

=====================================

품번  품목      수량  가격

=====================================

A      사과        3    1000

B      감귤        1    2000

C      복숭아     2    5000

=====================================

by 정순표 [2007.09.07 00:00:00]
규칙이 불분명하네요.. 그룹별루 최소 수량이나 최고수량 아니니면 같은금액중에 큰 수량인것도 아니고
지금 상태은 큰게 나올수도 있고 작은게 나올수도 있는...

by 현 [2007.09.07 00:00:00]
혹시 어제 사용자 팁에 질문 올리셨던 분이신가요?
거기에서 제가 기준이 불분명하다고 말씀드렸었는데요..
사과는 3인 것이 나오고, 복숭아는 2인 것이나오고...group by를 할때 나와야 하는 규칙이 일정치가 않습니다.
정순표님이 말씀하신대로,
sum을 할 것인지, 제일 큰것을 보일것인지, 제일작은 것을 보일것인지, 평균을 보일것인지 등의 규칙이 있어야 합니다.

by 마농 [2007.09.07 00:00:00]
SELECT 품번, 품목, 수량, 가격
FROM
(
SELECT 품번, 품목, 수량, 가격
, ROW_NUMBER() OVER(PARTITION BY 품번 ORDER BY ROWNUM) rn
FROM 테이블
)
WHERE rn = 1

by 송미진 [2007.09.07 00:00:00]
감사합니다~꾸벅~
질문할 때마다 많이 배우고 갑니다~
오늘 날씨 맑음!
주말 잘보내세요~~
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입