STUDY/SQL

논리 연산자

sorrow16 2021. 3. 8. 12:42

논리 연산자는 여러 조건을 논리적으로 연결할 때 사용하는 연산자입니다. SQL 문의 조건을 계속 추가해야 할 때 필수 연산자입니다.

 

구분연산자의미
논리 연산AND앞의 조건과 뒤의 조건이 동시에 참이어야 참이다. 즉, 앞뒤 조건을 동시에 마녹해야 한다.
OR앞의 조건이 참이거나 뒤의 조건이 참인 경우, 즉, 한쪽이라도 참이면 참이다.
NOT뒤의 조건에 대해 반대 결과를 반환한다.

 

AND

 

예시> employees 테이블에서 salary가 4000을 초과하면서, job_id가 IT_PROG인 값을 조회하세요.

 

[입력문]

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

 

 

 

[실행결과]

 

 

 

OR

 

예시> employees 테이블에서 salary가 4000을 초과하면서, job_id가 IT_PROG거나 FI_ACCOUNT인 경우를 조회하세요.

 

[입력문]

 

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

 

 

 

[실행결과]

 

 

 

NOT

 

NOT 연산자는 조건을 부정으로 만드는 역할을 하기 때문에 부정 연산자로 불립니다. 부정 연산자에는 부정 '비교 연산자'와 부정 'SQL 연산자'가 있습니다.

구분연산자의미
부정 비교!=같지 않다.
<>같지 않다.(ISO 표준)
NOT 열 이름=~와 같지 않다.
NOT 열 이름>~보다 크지 않다.
부정 SQLNOT BETWEEN a AND ba와 b 사이에 값이 없다.
NOT IN(list)list 갑과 일치하지 않는다.
IS NOT NULLnull 값을 갖지 않는다

 

예시> employees 테이블에서 employee_id가 105가 아닌 직원을 조회해 보세요.

 

[입력문]

 

SELECT * FROM employees WHERE employee_id <> 105;

 

 

 

[실행결과]