메뉴 건너뛰기

SAP 한국 커뮤니티

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

비와바람 2009.10.15 15:57 조회 수 : 2063

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


 


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


 


아래 내용에서 보면 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


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


 


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


 

번호 제목 글쓴이 날짜 조회 수
4125 <img src=3.gif>TABLE CONTROL에 관해 문의드립니다. [2] prt 2009.10.21 1603
4124 <img src=1.gif>BAPI를 체크하는 시스템 변수가 있을까요? 댕댕 2009.10.21 1282
4123 <img src=3.gif>CTS 관련 오류인데요, 해결 방안 좀 부탁드립니다. [1] 태극 2009.10.21 1927
4122 <img src=2.gif>클래스 CL_GUI_CFW=>DISPATCH 에 대해? [1] 예스맨 2009.10.21 5953
4121 <img src=3.gif>엑셀파일 업로드시 만건 이상일 때 처리방법 [5] 츄리닝 2009.10.21 3094
4120 <img src=3.gif>간단한 루프 안의 in 명령의 질문요 [7] 아밥돌이 2009.10.20 1544
4119 <img src=3.gif>ALV를 수정 ↔ 입력 모드로 전환하고 싶습니다.. [3] 개동이 2009.10.20 2223
4118 <img src=3.gif><img src=3.gif>sql문 중 업데이트문 문의드립니다. [5] 아밥고지를 찾아서 2009.10.20 1317
4117 <img src=3.gif>일자 함수에 관해 문의드립니다. [2] prt 2009.10.20 2087
4116 <img src=3.gif>타 NT서버의 .bat 파일 실행 어떻게 하죠? [5] 부산갈매기 2009.10.19 1443
4115 <img src=2.gif>MB5B 와 같은 역할을 하는 펑션 혹시 있을까요? [1] 댕댕 2009.10.19 2134
4114 <img src=2.gif>Ecc 6.0 버젼 Write 문으로 작성한 양식 깨짐.. [5] 오즈홈 2009.10.19 1166
4113 <img src=2.gif>로그인한 User에게 메시지 전송 방법 [6] 찬호사랑 2009.10.16 1856
4112 <img src=2.gif>스탠다드 실행화면에서 디폴트로 어떤 값이 뜨게 하고 싶어요. [3] 애밥퍼 2009.10.15 1375
4111 <img src=3.gif>테이블 컨트롤 마이너스 값이면 덤프가 나요 [3] SAMBATIME 2009.10.15 1676
» <img src=3.gif>LEFT JOIN 시 인덱스 관련 질문입니다. [5] 비와바람 2009.10.15 2063
4109 <img src=2.gif>BDC background job 실행과 Foreground 실행시 차이? [2] 왕초~삽질맨 2009.10.15 3079
4108 <img src=3.gif>프로그램을 실행한 유저 아이디를 알수 있을까요? [8] 태극 2009.10.15 1415
4107 <img src=2.gif>디버깅시 인터널 테이블 다운 받는 방법 [7] 아밥고지를 찾아서 2009.10.15 1568
4106 <img src=3.gif>(ALV) REUSE_ALV_HIERSEQ_LIST_DISPLAY 의 is_keyinfo 에 대하여. [2] JiruMi 2009.10.14 1622