SQL BETWEEN 연산자는 지정된 범위 내에 있는 값을 선택합니다. 그러나 때로는 범위 내에 있는 값이 아닌 값을 선택해야 할 수도 있습니다. 이 글에서는 SQL BETWEEN 연산자를 사용하여 범위 외의 값 검색하는 방법을 설명합니다.
NOT BETWEEN 연산자 사용
SQL BETWEEN 연산자와 반대로 동작하는 NOT BETWEEN 연산자를 사용하여 범위 외의 값 검색이 가능합니다. NOT BETWEEN 연산자를 사용하면 BETWEEN 연산자와 동일한 구문을 사용할 수 있습니다. 다음은 NOT BETWEEN 연산자를 사용하여 1과 10 사이의 범위 외 값 검색하는 예시입니다.
SELECT * FROM table_name
WHERE column_name NOT BETWEEN 1 AND 10;
위의 예시는 table_name 테이블에서 column_name 열의 값이 1과 10 사이에 있지 않은 모든 레코드를 선택합니다.
OR 연산자 사용
또다른 방법은 OR 연산자를 사용하여 두 개의 조건을 결합하여 범위 외의 값 검색할 수 있습니다. 아래는 OR 연산자를 사용하여 1보다 작거나 10보다 큰 값을 검색하는 예시입니다.
SELECT * FROM table_name
WHERE column_name < 1 OR column_name > 10;
위의 예시는 table_name 테이블에서 column_name 열의 값이 1보다 작거나 10보다 큰 모든 레코드를 선택합니다.
IS NULL 연산자 사용
값이 NULL인 경우에도 범위 외의 값으로 간주될 수 있습니다. 이 경우 IS NULL 연산자를 사용하여 NULL 값을 검색할 수 있습니다. 다음은 IS NULL 연산자를 사용하여 NULL 값을 검색하는 예시입니다.
SELECT * FROM table_name
WHERE column_name IS NULL;
위의 예시는 table_name 테이블에서 column_name 열의 값이 NULL인 모든 레코드를 선택합니다.
결과 예시
다음은 위에서 설명한 방법들을 사용하여 범위 외 값 검색의 결과 예시입니다.
column_name |
---|
3 |
12 |
NULL |
위의 테이블에서 column_name 열의 값이 1과 10 사이에 있지 않는 레코드는 12입니다. 또한 NULL 값도 범위 외의 값으로 간주됩니다.
결론
SQL BETWEEN 연산자를 사용하여 범위 외 값 검색은 NOT BETWEEN 연산자, OR 연산자, 그리고 IS NULL 연산자 등을 활용하여 수행할 수 있습니다. 데이터베이스에서 원하는 조건에 맞는 레코드를 선택하여 데이터를 효과적으로 관리할 수 있습니다.
참고자료: