Microsoft SQL Server / Query / IN, NOT IN
예제로 사용한 데이터베이스는 AdventureWorks2017입니다.
IN
다음은 Person.Person 테이블에서 FirstName, MiddleName, LastName을 10개 추출하는 쿼리입니다.
SELECT TOP(10) FirstName, MiddleName, LastName FROM Person.Person
만약 FirstName이 Syed 또는 Sam 또는 John인 사람을 추출하고 싶다면 아래처럼 쿼리합니다.
SELECT TOP(10) FirstName, MiddleName, LastName FROM Person.Person WHERE FirstName IN ( 'Syed', 'Sam', 'John' )
물론 아래와 같이 해도 됩니다.
SELECT TOP(10) FirstName, MiddleName, LastName FROM Person.Person WHERE FirstName = 'Syed' OR FirstName = 'Sam' OR FirstName = 'John'
NOT IN
만약 FirstName이 Syed, Sam, John이 아닌 사람을 추출하고 싶다면 아래처럼 쿼리합니다.
SELECT TOP(10) FirstName, MiddleName, LastName FROM Person.Person WHERE FirstName NOT IN ( 'Syed', 'Sam', 'John' )
다음과 같이 해도 됩니다.
SELECT TOP(10) FirstName, MiddleName, LastName FROM Person.Person WHERE FirstName != 'Syed' AND FirstName != 'Sam' AND FirstName != 'John'