이 자습서에서는 WHERE IN 절을 탐색하여 이를 사용하여 주어진 테이블이나 결과 집합에서 결과를 필터링하는 방법을 알아봅니다.
SQL WHERE IN 절
다음은 SQL에서 WHERE IN 절의 기본 구문을 보여줍니다.
열1, 열2, ...을 선택하세요.
FROM table_name
WHERE 컬럼명 IN (값1, 값2, ...);
기본 'select' 문으로 시작하고 그 뒤에 결과 집합에 포함하려는 열이 옵니다.
다음으로 결과를 검색하려는 테이블을 지정합니다. 마지막으로 WHERE 절과 필터링하려는 열의 이름을 사용하여 필터 조건을 지정합니다. IN 절 뒤에는 필터링에 사용할 값 목록을 지정합니다.
예 1: 단일 결과 필터링
WHERE IN 절을 사용하는 방법을 더 잘 보여주기 위해 예를 살펴보겠습니다. Sakila 샘플 데이터베이스의 'film' 테이블을 고려해보세요.
등급이 PG 또는 PG-13인 모든 영화를 검색한다고 가정해 보겠습니다. WHERE IN 절을 다음과 같이 사용할 수 있습니다.
SELECT 제목, 출시_연도, 등급영화에서
WHERE 등급 IN('PG');
이 경우 IN 절에서 검색하려는 단일 값의 목록을 제공합니다.
예 2: 여러 값 필터링
값 목록에서 둘 이상의 항목을 지정할 수도 있습니다. 예를 들어 등급이 PG 및 PG-13인 목록이 있는 영화를 검색하려면 다음과 같이 쿼리를 실행할 수 있습니다.
SELECT 제목, 출시_연도, 등급영화에서
WHERE 등급 IN ('PG', 'PG-13');
결과 출력은 다음과 같습니다.
예 3: 하위 쿼리로 필터링
또한 하위 쿼리에서 WHERE IN을 사용하면 주어진 결과 집합에서 결과를 필터링할 수 있습니다.
언어를 기준으로 영화를 필터링한다고 가정해 보겠습니다. 예를 들어 영어와 일본어로 된 영화를 검색하려면 다음과 같이 하위 쿼리 내에서 WHERE IN을 사용할 수 있습니다.
SELECT 제목, 출시_연도, 등급프롬필름F
언어_ID IN(
언어_ID 선택
언어에서
WHERE 이름 IN ('영어', '일본어')
);
이 예에서는 '언어' 테이블에서 영어와 일본어에 대한 '언어_id' 값을 검색하는 하위 쿼리를 생성합니다. 기본 쿼리에서는 결과 '언어_ID' 값을 기반으로 영화를 선택합니다.
결론
이 게시물에서는 SQL의 WHERE IN 절을 사용하여 주어진 목록에서 단일 또는 여러 값과 일치하는 결과를 필터링하는 방법을 배웠습니다.