SQL 연산자 - IN 연산자
IN 연산자는 특정 컬럼의 여러가지 데이터 값을 조회하고 싶을때 사용하실수 있습니다.
SELECT [조회할 열 이름 1], [조회할 열 이름 2], ..., [조회할 열 이름 n],
FROM [조회할 테이블 이름]
WHERE 열 이름 IN (조건 데이터 1, 조건 데이터 2, ..., 조건 데이터 n);
예를 들어 직책(JOB)이, CLERK, SALESMAN, MANAGER 인 사원 데이터를 출력 하고 싶은 경우 아래와 같이 조회 하시면 됩니다. 예제로 사용된 TABLE의 정보는 'SCOTT 계정 예제 Table(emp, dept, salgrade)'을 참고하시면 됩니다.
SELECT *
FROM EMP
WHERE JOB IN ('CLERK', 'SALESMAN', 'MANAGER');
위와 같은 결과가 출력되도록 비교연산자 '=' 와 논리연산자 'OR'를 사용하여 쿼리를 작성하실수도 있습니다.
SELECT *
FROM EMP
WHERE JOB = 'CLERK' OR JOB = 'SALESMAN' OR JOB = 'MANAGER';
이렇게 표현 하는 것도 하나의 방법이지만, 조건이 늘어 날 수록 조건식이 많아져 번거로울 수 있습니다.
이번에는 반대의 경우를 생각해 봅시다. 직책(JOB)이, CLERK, SALESMAN, MANAGER 이 아닌 경우를 출력 하고 싶을 때는 어떻게 하면 될까요? 아래와 같이 조회 하시면 됩니다.
SELECT *
FROM EMP
WHERE JOB NOT IN ('CLERK', 'SALESMAN', 'MANAGER');
IN 앞에 NOT를 붙여 반대의 상황을 조회 할 수 있도록 합니다. '논리 연산자 (Logical Operators)' 부분에서 설명한 바와 같이 NOT 연산자를 적용하면 TRUE/FALSE로 나오는 결과 값의 반대 값을 반환 합니다.
'DataBase' 카테고리의 다른 글
SQL 연산자 - LIKE 연산자 (0) | 2025.07.25 |
---|---|
SQL 연산자 - BETWEEN ~ AND ~ 연산자 (1) | 2025.07.24 |
SQL 연산자 - 논리 연산자 (Logical Operators) - 작성중 (1) | 2025.07.22 |
[DBMS] PostgreSQL (0) | 2025.07.21 |
[DBMS] MariaDB (0) | 2025.07.21 |