IN 연산자는 SQL에서 여러 값 중 하나와 일치하는지 확인할 때 사용하는 연산자입니다.
주로 WHERE 절에서 사용되며, 특정 컬럼의 값이 주어진 여러 값 중 하나와 일치하면 해당 행이 반환됩니다.
기본문법
SELECT column1, column2, ...
FROM table_name
WHERE column_name IN (value1, value2, ..., valueN);
IN 연산자의 동작 예시
다음과 같은 테이블 employees 가 있다고 가정해 봅시다.
특정 부서에 속한 직원을 조회하려면 다음과 같이 작성합니다.
SELECT name, department
FROM employees
WHERE department IN ('Sales', 'IT');
NOT IN 사용하기
NOT IN 은 특정 값과 일치하지 않는 데이터를 조회할 때 사용합니다.
SELECT name, department
FROM employees
WHERE department NOT IN ('Sales');
IN 과 OR
IN 연산자는 여러 개의 OR 조건을 연결한 것과 같은 역할을 합니다.
하지만 코드가 더 간결해지기 때문에 IN 연산자를 사용합니다.
IN 연산자는 1000개 값까지만 입력할 수 있습니다.
그 이상을 입력하기 위해서는 IN 연산자를 1000개 이하로 여러 개의 OR 로 분리해야 합니다.
-- IN 연산자 사용
SELECT name
FROM employees
WHERE department IN ('Sales', 'IT', 'Marketing');
-- OR 조건 사용
SELECT name
FROM employees
WHERE department = 'Sales' OR department = 'IT' OR department = 'Marketing';
서브쿼리와 IN 사용
IN 연산자는 서브쿼리와 함께 사용할 수 있습니다.
서브쿼리는 조건에 맞는 여러 값을 반환할 수 있습니다.
SELECT name, department
FROM employees
WHERE department IN (
SELECT department
FROM employees
WHERE department IN ('Sales', 'IT')
);
'SQL' 카테고리의 다른 글
오라클 SQL - ORDER BY (1) | 2024.12.17 |
---|---|
오라클 Column 추가, 삭제, 변경 (0) | 2024.12.16 |
오라클 테이블 만드는 방법( CREATE, PK, INDEX, COMMENT ) (0) | 2024.12.16 |
SQL 기본키, 외래키 (1) | 2024.12.09 |
SQL Developer 으로 Tablespace 생성 (1) | 2024.12.09 |