SSISO Community

시소당

사례1. 기간을 연별로 나누고 월별로 나눈 조건을 주면 인덱스를 사용할 수 있다.

다음의  예제는  연월별  매출수량을  조회하는  SQL문이다.  이런경우는  컬럼의  인덱스를  이용할  수  없음으로  연과  월컬럼을  나누어  인덱스를  걸어준다.

Select  a.yy||a.mm,  dept,  (sale_qty)
  From  sales_summery  a
Where  a.yy||A.mm  Between  ‘9410’  and  ‘9504’
Group  by  a.yy||a.mm,  dept;

<개선안>  
select  a.yy||a.mm,  dept,  sum(sale_qty)
  from  sales_summery  a
where  (a.yy  =  ‘94’  and  a.mm  betweem  ‘10’  and’12’)
        or  (a.yy  =’95’  and  a.mm  between  ‘01’  and  ‘04’)
      group  by  a.yy||a.mm,  dept

636 view

4.0 stars