IN 조건은 SELECT, INSERT, UPDATE 또는 DELETE 문에서 너무 많은 OR 조건을 사용할 필요성을 최소화하기 위해 SQL Server(Transact-SQL)에서 사용됩니다.
IN 조건의 구문
biểu thức IN (giá trị 1, giá trị 2, … giá trị n);
변수 이름 또는 변수 값
표현식
확인할 값
값 1, 값 2, . 값 n
표현식으로 확인할 값
참고
- SQL Server의 IN 조건은 표현식의 값이 1이고 값이 2인 경우 레코드를 반환합니다. 또는 n 값.
- SQL Server의 IN 조건은 IN 연산자라고도 합니다.
예:문자열 값 사용
SELECT*
FROM nhanvien
WHERE ho I
N ('Smith', 'Anderson', 'Johnson');
직원의 성이 Smith, Anderson 또는 Johnson인 경우 결과는 테이블의 행입니다. SELECT 문에서 *를 사용하기 때문에 목차의 모든 필드가 결과 집합에 포함됩니다.
위의 예는 아래의 SELECT 명령과 유사합니다.
SELECT *
FROM nhanvien
WHERE ho = 'Smith'
OR ho = 'Anderson'
OR ho = 'Joh
nson';
IN 조건을 사용하면 명령이 더 짧고 이해하기 쉽게 보입니다.
예:숫자 값 사용
SELECT *
FROM nhanvien
WHERE nha
nvien_id IN (1, 2, 3, 4, 10);
반환된 결과는 ID가 1, 2, 3, 4 또는 10인 직원입니다. 위 명령은 다음 명령과 같습니다.
SELECT*
FROM nhanvien
WHERE nhanvien_id = 1
OR nhanvien_id = 2
OR nhanvien_id = 3
OR nhanvien_id = 4
OR nhanvien_i
d = 10;
예:NOT 연산자 사용
SELECT *
FROM nhanvien
WHERE t
en NOT IN ('Sarah', 'John', 'Dale');
위의 예에서 결과 집합은 Sarah, John 또는 Dale 이외의 직원 이름을 가진 테이블의 행으로 구성됩니다. 때로는 원하는 값이 아닌 값을 찾는 것이 더 쉽습니다. 위의 예시는 아래 명령어와 동일합니다.
SELECT *
FROM nhanvien
WHERE ten <> 'Sarah'
AND ten <> 'John'
AND ten <> 'Dale';