본문 바로가기
코딩 노트/Oracle SQL

[Oracle SQL] 논리 연산자를 사용한 조건 논리 연결하기

by 바크롱 2022. 2. 15.

논리 연산자는 조건을 논리적으로 연결할 때 사용하는 연산자입니다. 여기에 해당하는 연산자로는 AND, OR, NOT 이 있습니다.

 

AND

AND 조건은 앞 뒤 조건이 모두 참인 경우에 대한 결과를 반환합니다.

SELECT *
FROM employees
WHERE salary > 4000
AND job_id = 'IT_PROG';

위의 쿼리를 실행해보면, salary는 4000을 초과하면서 job_id가 'IT_PROG'인 조건을 모두 만족하는 데이터를 반환합니다.

 

OR

OR 조건은 앞의 조건이 참이거나 뒤의 조건이 참인 경우의 결과를 반환합니다.

SELECT *
FROM employees
WHERE salary > 4000
AND job_id = 'IT_PROG'
OR job_id = 'FI_ACCOUNT';

AND절 예시에서 사용했던 쿼리에서 OR 연산자를 추가로 사용해서 조회한 결과는 위와 같습니다. job_id에 대해서 'IT_PROG'인 경우와 'FI_ACCOUNT'인 경우 둘 중의 하나의 조건만 만족하면 되므로 두 경우 모두가 조회 결과에 포함된 것을 확인할 수 있습니다.

 

NOT

NOT 조건은 뒤에 오는 조건에 반대되는 결과를 출력하고자 할 때 사용합니다. NOT 조건 외에도 부등호를 사용해서 해당 값이 아닌 경우에 대한 데이터를 출력할 수 있습니다. 세 경우 모두 결과는 동일합니다.

SELECT *
FROM employees
WHERE NOT job_id = 'IT_PROG';

SELECT *
FROM employees
WHERE job_id <> 'IT_PROG';

SELECT *
FROM employees
WHERE job_id != 'IT_PROG';

job_id가 'IT_PROG'에 해당하지 않는 경우의 데이터만 조회한 결과는 위와 같습니다. NOT 조건은 어떤 특정 조건에 해당하지 않는 데이터만 가져오고 싶을 때 유용하게 사용할 수 있습니다.

 

댓글