분석함수를 인라인 뷰로 쓸때 문의드립니다. 0 1 1,772

by captain [2014.06.02 23:18:42]


안녕하세요.

 

제가 궁금한걸 제대로 전달할수 있을지 모르겠습니다. ㅠ

 

분석함수를 인라인뷰로 사용할때, 이 경우에는 인라인뷰가 항상 먼저 풀리는건가요?..

 

쿼리를 직접 기재할수 없어서 대략적으로 말씀드리면, (전체 쿼리는 아닙니다.)

 

SELECT 상품정보, 잡다한 데이타,  해당 상품의 마지막으로 팔린갯수를 보여주고자 함..

FROM 상품 A, 그외 잡다한 테이블, 

         (

          SELECT 상품코드, 팔린갯수
            FROM (SELECT RANK () OVER (PARTITION BY 상품코드 ORDER BY 판매시간 DESC) AS RANK, 상품코드, 팔린갯수
                    FROM 판매 이력
                 )
           WHERE RANK = 1

         ) F

WHERE A.상품코드 = F.상품코드

     AND 유효한 상품 조건 등..

 

위의 쿼리를 수행해보면 밖에서 유효한 상품코드만을 추출하여 마지막으로 팔린 갯수를 보여주고자 합니다.

그런데, 외부 조건(유효한 상품조건)이 마지막으로 팔린갯수(여기서는 F) 안으로 안들어갑니다.

판매이력이 무지 큰 테이블인데 이 테이블을 풀 스캔을 합니다..

(기대는 인라인 조건으로 들어가길 원했습니다.)

다른 조건으로 유효한 상품코드를 취합니다. (그외 잡다한 테이블과 JOIN)

고수님들.. 이런 경우는 어떻게 처리를 해야 하나요?..

유효한 상품코드만 인라인 뷰의 마지막 판매량을 가져오고 싶습니다.  

(참고로 테이블변경은 어렵습니다. ㅠㅠ)

 

 

by 임상준 [2014.06.03 08:46:33]

인라인 뷰 안쪽에 상품테이블을 넣어보시죠... rnk=1 이 A 와 조인 된 이후에 걸러지도록요

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