논리 연산자
비교 연산자를 계속 알아보기 전에 논리 연산자를 먼저 살펴보겠습니다. 논리 연산자는 여러 개의 조건을 연결해 그 결과를 참이나 거짓으로 반환합니다. SQL에서 사용하는 논리 연산자는 다음과 같이 3개가 있습니다.
▼ 표 5-2 논리 연산자
연산자 |
설명 |
사용 예 |
AND, && |
연결되는 조건이 모두 참(TRUE)이면 참(TRUE) |
1 = 1 AND 2 = 2 → 참(TRUE) 1 = 1 AND 2 = 3 → 거짓(FALSE) |
OR, || |
연결되는 조건이 하나라도 참(TRUE)이면 참(TRUE) |
1 = 1 OR 2 = 2 → 참(TRUE) 1 = 1 OR 2 = 3 → 참(TRUE) |
NOT, ! |
조건이 결과와 반대인 것이 참(TRUE) |
NOT 2 > 3 → 참(TRUE) NOT 3 > 2 → 거짓(FALSE) |
코드 5-13을 보면 WHERE 절에는 countrycode = 'KOR'이라는 조건과 district LIKE '%ong%'라는 2개의 조건이 AND로 연결되어 있습니다. 여기서 사용한 AND도 하나의 연산자로, 논리 연산자에 속합니다. AND 연산자는 연결되는 두 개의 조건이 모두 참, 즉 두 조건을 모두 만족해야 참이 됩니다. countrycode = 'KOR' AND district LIKE '%ong%'는 city 테이블에서 countrycode 값이 KOR이고 district 값에 ong가 포함된 건만 조회됩니다. 만약 AND로 연결되는 두 조건 중 하나라도 만족하지 않는다면 해당 건은 조회되지 않습니다. AND 대신 &&를 넣어도 같은 결과가 나옵니다.