SSISO Community

시소당

Between연산을 사용한다.

Where조건에서  범위를  검색하게  될  때  <,  >  를  사용하게  된다.  인덱스를  효율적으로  사용하게  하기위해서는  Between  and연산을  사용한다.

SELECT    a,거래분류코드,  a.sum(전표매수),  a.sum(건수),  a.sum(금액)
    FROM    조작자일별상세원장  a
WHERE      a.국기호  =  :입력국기호
      AND      a.거래일자  >=  :입력거래일자1  AND  a.거래일자  <=  :입력거래일자2
      AND      a.조작자번호  =  :입력조작자번호
      AND      a.과목코드  IN  (‘1’,  ’2’)
      GROUP  BY    a.거래분류코드;

<개선안>
SELECT    a,거래분류코드,  a.sum(전표매수),  a.sum(건수),  a.sum(금액)
    FROM    조작자일별상세원장  a
WHERE      a.국기호  =  :입력국기호
      AND      a.거래일자  BETWEEN  :입력거래일자1  AND    :입력거래일자2
      AND      a.조작자번호  =  :입력조작자번호
      AND      a.과목코드  IN  (‘1’,  ’2’)
      GROUP  BY    a.거래분류코드;

891 view

4.0 stars