데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
A와 B 테이블이 존재합니다.
이 두개의 테이블을 조인시키면
A레코드 1개에 B테이블의 레코드 1~5개 정도가 연결 됩니다.
그런데 저는 B테이블의 레코드 여러개 중 1개만 A테이블의 레코드와 연결 시키고 싶습니다.
그 기준은 다음과 같습니다.
B테이블의 여러 레코드 중 LEVEL 컬럼의 값이 제일 큰 것만 A테이블의 레코드와 Join 시켜주고 싶습니다.
예전에 방법을 알았었던 것 같은데 ... 막상 다시 해보려니 잘 안되네요...
방법이 있을까요?
select *
from dbo.tTest1 as a
inner join (
select cKey,max(cLevel) as cLevel
from dbo.tTest2
group by cKey
) as b
on b.cKey = a.cKey