시소당
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.거래분류코드;