SQL WHERE IN 절

Sql Where In Jeol



SQL에서는 WHERE IN 절을 사용하여 특정 데이터베이스의 결과를 필터링할 수 있습니다. WHERE IN 절을 사용하면 주어진 목록에서 지정된 값 중 하나 이상과 일치하는 지정된 데이터베이스의 행을 선택할 수 있습니다.

이 자습서에서는 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 절을 사용하여 주어진 목록에서 단일 또는 여러 값과 일치하는 결과를 필터링하는 방법을 배웠습니다.