전체 값을 비교하여 모두 만족해야만 True를 반환.
예) 1000 > ALL(500, 1000, 2000) -> FALSE : ALL안에 있는 모든 값들보다 1000이 커야하므로 FALSE
두 개의 식을 결합하여 두 식이 모두 True일 경우에만 True를 반환.
예) WHERE height > 10 AND weight >5; : 높이가 10보다 크고, 중량이 5보다 큰 경우 True반환
조건 식 중 하나만 만족해도 True를 반환한다.
예) 1000 > ANY(500, 1000, 1500) --> True
BETWEEN a AND b : a에서 b사이의 내용을 검색해서 나타내라
날짜, 나이, 문자 등등
NULL결과가 출력되어도 결과가 있다고 본다. 따라서 True반환!!
LIKE는 정확한 값이 아닌 유사한 값을 일치시킬 수 있는 연산자 이다.
--A로 시작하는 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE 'A%'
--A로 끝나는 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '%A'
--A를 포함하는 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '%A%'
--A로 시작하는 두글자 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE 'A_'
--첫번째 문자가 'A'가 아닌 모든 문자열 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '[^A]'
--첫번째 문자가 'A' 또는 'B' 또는 'C'인 문자열 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '[ABC]'
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '[A-C]'
해당명령문이 거짓인 행을 선택하기 위한것.
두 조건중 하나를 충족하는 행을 선택할 수 있는 논리연산자 이다.
select * from tcity where region = '경기' and popu >= 50 or area >= 500;
- 처음 생각했던 순서 : 지역이 경기이면서 인구가 50만 이상이거나 면적이 500 이상인 도시 검색
- 결과 : 지역이 경기이면서 인구가 50만 이상이거나, 경기가 아니고 인구가 50만보다 적으면서 면적은 500 이상인 도시 검색
(where region = '경기' and popu >= 50) or area >= 500; select * from tcity where region = '경기' and (popu >= 50 or area >= 500);
- 결과 : 인구가 50만 이상이거나 면적이 500 이상인 경기인 도시 검색
따라서 괄호로 우선순위를 명확히 지정하는 것이 좋음!