• SQL BETWEEN 연산자

    2021. 5. 30.

    by. Jacob Lee

    728x90

     


     

    BETWEEN 연산자

    SQL에서는 BETWEEN 연산자를 사용해서 주어진 범위에 맞는 데이터를 선택한다.

    BETWEEN 연산자는 WHERE절과 같이 사용된다.

     

    기본 문법은 다음과 같다.

    SELECT column_name
    FROM table_name
    WHERE column_name BETWEEN value1 AND value2;

    WHERE BETWEEN

    BETWEEN 연산자는 곧 value >= low AND value <= high<와 같다.

    즉, 시작점과 종료점을 모두 포함한다 (BETWEEN 8 AND 9이라고 가정하면 8과 9가 모두 포함된다).

    하지만 NOT BETWEEN을 사용하면 value < low OR value > high와 같아진다.

     

    BETWEEN 연산자는 날짜(date)와도 사용이 가능하다.

    날짜를 사용하기 위해선 ISO 8601 날짜 포맷(YYYY-MM-DD)을 사용해주어야 한다.

     

    타임스탬프 정보가 포함되어 있는 날짜(몇월 몇일이 아닌, 몇 시, 몇 분 같은)를 BETWEEN 연산자와 사용할 때, <=, >=와 같은 비교 연산자와 BETWEEN 얀신자의 사용을 조심해야 한다. 왜냐면 datetime은 자정(0:00)에 시작하기 때문이다.

     

    BETWEEN 사용하기

    Payment 테이블에서 payment_date가 5월 10일, 그리고 5월 30일 사이인 데이터를 조회한다고 할 때, 아래와 같이 요청할 수 있다.

    SELECT * FROM payment
    WHERE payment_date BETWEEN '2021-05-10' AND '2021-05-30';

     

    앞서 언급한 것 처럼 여기서 조심해야 할 부분이 있는데, BETWEEN 8 AND 9이 8과 9를 포함하는데 반해, 날짜와 사용할 때는 뒤에 오는 날짜는 포함이 안된다는 것이다.

    더 정확히 말하면 날짜는 자정(0:00)에 시작하기 때문에 BETWEEN '2021-05'10' AND '2021-05-30'은 5월 10일 0:00부터 5월 29일 11:59:59 까지를 의미하는 것이다.

     

     

    728x90

    'Back-end > SQL' 카테고리의 다른 글

    SQL LIKE & ILIKE연산자  (0) 2021.05.30
    SQL IN 연산자  (0) 2021.05.30
    SQL Limit절  (0) 2021.05.30
    SQL ORDER BY 키워드  (0) 2021.05.30
    SQL SELECT WHERE절  (0) 2021.05.30

    댓글