메뉴 건너뛰기

SAP 한국 커뮤니티

<img src=3.gif>LEFT JOIN 시 인덱스 관련 질문입니다.

비와바람 2009.10.16 00:57 조회 수 : 2124

요새 부쩍 튜닝에 관심을 두고 있는데 질문이 생겨서요~


 


이거 저거 해봤는데 방법이 없는거 같습니다만... 혹시 방법이 있는가 해서요


 


아래 내용에서 보면 INNER  JOIN을 하면 MARA INDEX를 먼저 타고 MBEW을 읽는데요. 빠릅니다 이렇게 되면


 


그러나 LEFT JOIN을 하면 MBEW을 INDEX를 타고 MARA를 읽습니다.


 


그런데 MBEW에 조건이 1개 MANDT만 들어가는것으로 보여지구요. 사실상 없는거죠? 그래서 그런지 상당히 느리네요


 


이렇게 되는것을 INNER JOIN 결과처럼 MARA를 먼저 읽고 MBEW로 가는 방법이 있을까요?


 


LEFT JOIN하면 원래 저렇게 되는건가요?


 


단 WHERE 절 조건은 변경 없이 말입니다.


 


아 그리고 

FOR ALL ENTRIES 쓰라는 말씀은 말아주시구요 ^^ 요놈도 느립니다


 


아래 결과


-----------------------------------------------------------------


  DATA : BEGIN OF it_itab OCCURS 0,
         matnr LIKE mara-matnr,
         verpr LIKE mbew-verpr,
  END OF it_itab.


 


  SELECT
    a~matnr
    b~verpr
    INTO CORRESPONDING FIELDS OF TABLE it_itab
    FROM mara AS a INNER JOIN mbew AS b
                                ON a~matnr = b~matnr
                                AND bwkey EQ '1000'
                                AND bwtar EQ space
                                AND vprsv EQ 'V'
    WHERE matkl = '101'
    .


-------------------------ST05------------------------------------
   0 SELECT STATEMENT ( Estimated Costs =  1.746E+04 [timerons] )
          1 RETURN
              2 HSJOIN
                  3 [O] FETCH MBEW
                      4 IXSCAN MBEW~0 #key columns:  1


                  5 [I] FETCH MARA
                      6 IXSCAN MARA~L #key columns:  2
-----------------------------------------------------------------


  SELECT
    a~matnr
    b~verpr
    INTO CORRESPONDING FIELDS OF TABLE it_itab
    FROM mara AS a LEFT JOIN mbew AS b
                                ON a~matnr = b~matnr
                                AND bwkey EQ '1000'
                                AND bwtar EQ space
                                AND vprsv EQ 'V'
    WHERE matkl = '101'
    .
-------------------------ST05------------------------------------
  0 SELECT STATEMENT ( Estimated Costs =  1.724E+04 [timerons] )
         1 RETURN
             2 NLJOIN
                 3 [O] TBSCAN
                     4 SORT
                         5 FETCH MARA
                             6 IXSCAN MARA~L #key columns:  2


                 7 [I] FETCH MBEW
                     8 IXSCAN MBEW~0 #key columns:  4


-----------------------------------------------------------------


 


답변 부탁드리겠습니다~ 꾸벅!


 

번호 제목 글쓴이 날짜 조회 수
» <img src=3.gif>LEFT JOIN 시 인덱스 관련 질문입니다. [5] 비와바람 2009.10.16 2124
4109 <img src=2.gif>BDC background job 실행과 Foreground 실행시 차이? [2] 왕초~삽질맨 2009.10.16 3233
4108 <img src=3.gif>프로그램을 실행한 유저 아이디를 알수 있을까요? [8] 태극 2009.10.16 1477
4107 <img src=2.gif>디버깅시 인터널 테이블 다운 받는 방법 [7] 아밥고지를 찾아서 2009.10.15 1606
4106 <img src=3.gif>(ALV) REUSE_ALV_HIERSEQ_LIST_DISPLAY 의 is_keyinfo 에 대하여. [2] JiruMi 2009.10.14 1654
4105 <img src=3.gif>이거 챙피해서 누구한테 물어보지도 못하고 [6] SAMBATIME 2009.10.14 1979
4104 [re] <img src=2.gif>이거 챙피해서 누구한테 물어보지도 못하고 [6] file 방배 2009.10.15 1317
4103 <img src=3.gif>list ALV 프로그램 종료(버튼 클릭 후 카운트 값 0 만들기) [9] 츄리닝 2009.10.14 1664
4102 <img src=2.gif>BDC로 발생한 트랜젝션여부 체크에 관해 [3] 댕댕 2009.10.14 1373
4101 <img src=3.gif>[급] INCLUDE 오류입니다. 찾을 수가 없다고 뜨네요. [5] 얄리뽕다 2009.10.14 1474
4100 <img src=2.gif>Class 에 관한 질문 드리려고 합니다. [2] cskang 2009.10.13 1407
4099 [re] <img src=2.gif>Class 에 관한 질문 드리려고 합니다. 요요 2009.10.13 1195
4098 <img src=2.gif>시 분 초 계산 할 때 유용한 펑션이나 기타 사항 부탁드립니다. [4] 찬호사랑 2009.10.13 2971
4097 <img src=2.gif>sapmzxxxx 프로그램의 include 저장 테이블 [5] zzzz 2009.10.13 1850
4096 <img src=2.gif>HR 관련 평션이 존재하는지 궁금합니다. ? [7] 예스맨 2009.10.13 1591
4095 <img src=3.gif>se30에서 Groos, Net Time 질문입니다. [3] 비와바람 2009.10.13 1659
4094 <img src=2.gif>TABLES: *EKPO 이렇게 선안 하면 무슨 뜻이죠. [13] cskang 2009.10.13 1477
4093 <img src=3.gif>select 해올때 해당 필드가 가장 큰 값을 가지는것을 가지고 오게 하는법 [2] 아밥고지를 찾아서 2009.10.13 1924
4092 <img src=3.gif>1000번 스크린 질문좀 드리겠습니다. [5] file 들아쿠라 2009.10.12 1814
4091 <img src=3.gif>type-m 에서 버튼속성 컨트롤요~~ [5] abap고수되기! 2009.10.12 1512