업무 도중 차장님이 BETWEEN 과 >=, <=의 성능 차이가 있다고 얘기해 주셨다.
찾아보니 BETWEEN보다는 부등호를 사용해서 조회하는 것이 빠르다고 한다.
확실하진 않지만 눈에 보이지 않은 내부적인 부분 CPU Cycle 때문이라고 한다.
따로 테이블을 만들지는 않고 회사 개발테이블을 사용해서 속도를 비교해 보았다.
SELECT * FROM ARTORDE WHERE ORDER_DT >= '2022-01-01' AND ORDER_DT <= '2022-01-31';
SELECT * FROM ARTORDE WHERE ORDER_DT BETWEEN '2022-01-01' AND '2022-01-31';
확실히 부등호를 사용한 비교가 속도가 빠르다!
쿼리 자체는 BETWEEN이 보기 쉽지만 후에 퍼포먼스적인 측면에서 고려한다면 부등호를 쓰는 게 나을 것 같다.
** 부등호는 DBMS에 종속적이지 않아 DBMS 별로 성능에 대한 미세한 차이도 있을 수 있다.