메뉴 건너뛰기

SAP 한국 커뮤니티

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

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

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


 


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


 


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


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


 


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


 

번호 제목 글쓴이 날짜 조회 수
4112 <img src=2.gif>스탠다드 실행화면에서 디폴트로 어떤 값이 뜨게 하고 싶어요. [3] 애밥퍼 2009.10.16 1376
4111 <img src=3.gif>테이블 컨트롤 마이너스 값이면 덤프가 나요 [3] SAMBATIME 2009.10.16 1679
» <img src=3.gif>LEFT JOIN 시 인덱스 관련 질문입니다. [5] 비와바람 2009.10.16 2072
4109 <img src=2.gif>BDC background job 실행과 Foreground 실행시 차이? [2] 왕초~삽질맨 2009.10.16 3095
4108 <img src=3.gif>프로그램을 실행한 유저 아이디를 알수 있을까요? [8] 태극 2009.10.16 1421
4107 <img src=2.gif>디버깅시 인터널 테이블 다운 받는 방법 [7] 아밥고지를 찾아서 2009.10.15 1573
4106 <img src=3.gif>(ALV) REUSE_ALV_HIERSEQ_LIST_DISPLAY 의 is_keyinfo 에 대하여. [2] JiruMi 2009.10.14 1625
4105 <img src=3.gif>이거 챙피해서 누구한테 물어보지도 못하고 [6] SAMBATIME 2009.10.14 1937
4104 [re] <img src=2.gif>이거 챙피해서 누구한테 물어보지도 못하고 [6] file 방배 2009.10.15 1256
4103 <img src=3.gif>list ALV 프로그램 종료(버튼 클릭 후 카운트 값 0 만들기) [9] 츄리닝 2009.10.14 1629
4102 <img src=2.gif>BDC로 발생한 트랜젝션여부 체크에 관해 [3] 댕댕 2009.10.14 1298
4101 <img src=3.gif>[급] INCLUDE 오류입니다. 찾을 수가 없다고 뜨네요. [5] 얄리뽕다 2009.10.14 1351
4100 <img src=2.gif>Class 에 관한 질문 드리려고 합니다. [2] cskang 2009.10.13 1341
4099 [re] <img src=2.gif>Class 에 관한 질문 드리려고 합니다. 요요 2009.10.13 1154
4098 <img src=2.gif>시 분 초 계산 할 때 유용한 펑션이나 기타 사항 부탁드립니다. [4] 찬호사랑 2009.10.13 2832
4097 <img src=2.gif>sapmzxxxx 프로그램의 include 저장 테이블 [5] zzzz 2009.10.13 1641
4096 <img src=2.gif>HR 관련 평션이 존재하는지 궁금합니다. ? [7] 예스맨 2009.10.13 1442
4095 <img src=3.gif>se30에서 Groos, Net Time 질문입니다. [3] 비와바람 2009.10.13 1565
4094 <img src=2.gif>TABLES: *EKPO 이렇게 선안 하면 무슨 뜻이죠. [13] cskang 2009.10.13 1420
4093 <img src=3.gif>select 해올때 해당 필드가 가장 큰 값을 가지는것을 가지고 오게 하는법 [2] 아밥고지를 찾아서 2009.10.13 1872