카테고리 없음

OR-Expansion(Use_concat)

초록깨비 2022. 5. 24. 11:03
728x90

OR-Expansion 

 

  옵티마이저가 OR 조건을 union all 형태로 변경해 주는 경우를 OR-Expansion 이라고 한다

 

 

  힌트

      Use_concat : OR-Expansion을 유도

      No_expand : OR-Expansion을 방지

 

 

     OR-Expansion 기능을 사용하지 못하게 하려면

            _no_or_expansion parameter = true로 설정한다

 

 

    SELECT  /*+ use_concat index(B) */  * 
      FROM TAB_P001 B 
     WHERE ( B.TAG_STYLE_NO LIKE :P_STYLE_NO||'%'                       
           OR   B.STYLE_NO LIKE :P_STYLE_NO||'%' )
         AND B.SEASON_YEAR LIKE :P_SEASON_YEAR      

   

 

    => SELECT   * 
          FROM TAB_P001 B 
         WHERE B.TAG_STYLE_NO LIKE :P_STYLE_NO||'%'    
           AND B.SEASON_YEAR LIKE :P_SEASON_YEAR      

 

 

         UNION ALL

 

 

        SELECT   * 
          FROM TAB_P001 B 
         WHERE B.STYLE_NO LIKE :P_STYLE_NO||'%'    
           AND B.SEASON_YEAR LIKE :P_SEASON_YEAR      

 

 

 

 

 

   

728x90