MySQL - BETWEEN 과 부등호(>=, <=) 성능 차이

GARY·2022년 4월 12일
0

업무 도중 차장님이 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 별로 성능에 대한 미세한 차이도 있을 수 있다.

  • DBMS 란?
    -- 데이터베이스 관리 시스템(DataBase Management System, DBMS)은 데이터베이스를 조작하는 별도의 소프트웨어
    -- 대표적인 DBMS에는 오라클(Oracle), MySQL, MSSQL, MariaDB 등이 있다.
profile
개발하는 개린이 개리

0개의 댓글