SQL 연산자는 비교 연산자보다 조금 더 확장된 연산자로 자주 쓰는 연산자로 종류는 아래와 같습니다.
구분 | 연산자 | 의미 | |||
SQL 연산 | BETWEEN a AND b | a와 b 사이에 값이 있다(a,b 값 포함) | |||
IN (list) | list 중 어느 값이라도 일치한다 | ||||
LIKE '비교 문자' | 비교 문자와 형태가 일치한다(%, _ 사용) | ||||
IS NULL | null 값을 갖는다 |
BETWEEN 연산자
BETWEEN 연산자는 두 값의 범위에 해당하는 행을 출력할 때 사용합니다. a 이상 b 이하의 값을 조회하라는 의미로 >=와 <= 연산자를 함께 사용한 것과 같습니다.
예시> employees 테이블에서 salary가 10,000 이상이고, 20,000 이하인 직원 정보를 출력하세요.
[입력문]
SELECT * FROM employees WHERE salary BETWEEN 10000 AND 20000;
[실행결과]
IN 연산자
조회하고자 하는 데이터 값이 여러 개일 때 사용합니다. = 연산자와 유사하지만 = 연산자는 조회 조건으로 데이터 값을 하나만 지정할 수 있는데 반해 IN 연산자는 데이터 값을 여러 개, 즉 목록(list)으로 지정할 수 있습니다.
예시> employees 테이블에서 salary가 10000,17000, 24000인 직원 정보를 출력하세요.
[입력문]
SELECT * FROM employees WHERE salary IN(10000, 170000, 24000);
[실행결과]
※ WHERE 절의 조건식이 목록이기 때문에 IN 연산자 대신 = 연산자를 사용하면 오류가 발생합니다.
LIKE 연산자
LIKE 연산자는 조회 조건 값이 명확하지 않을 때 사용합니다. LIKE 연산자는 '~와 같다'라는 의미입니다.
[LIKE 연산자 특징]
- LIKE 연산자는 %와 _ 같은 기호 연산자(wild card)와 함께 사용합니다.
- 조건에는 문자나 숫자를 포함할 수 있습니다.
- %는 '모든 문자'라는 의미고, _는 '한글자' 라는 의미입니다.
예시> employees 테이블에서 job_id 값이 AD를 포함하는 모든(%) 데이터를 조회하세요.
[입력문]
SELECT * FROM employees WHERE job_id LIKE 'AD%';
※ 'AD%' 는 맨 앞에 AD라는 문자 값을 가지면서 그 뒤로 모든 문자(%)를 포함하는 데이터
[실행결과]
예시> employees 테이블에서 AD를 포함하면서 AD 뒤에 따라오는 문자열이 3자리인 데이터 값을 갖는 직원 정보를 조회하세요(AD + 3자리 데이터 값)
[입력문]
SELECT * FROM employees WHERE job_id LIKE 'AD___';
[실행결과]
※ 'AD_ _ _' 는 AD 뒤에 따라오는 문자열이 3자리인 데이터
IS NULL 연산자
IS NULL 연산자는 데이터 값이 null 인 경우를 조회하고자 할 때 사용합니다. null은 값이 지정되지 않았기 때문에 값이 없어 알 수 없는 값을 말합니다.
예시> employees 테이블에서 manager_id가 null 값인 직원 정보를 출력해 보세요.
[입력문]
SELECT * FROM employees WHERE manager_id IS NULL;
[실행결과]
'STUDY > SQL' 카테고리의 다른 글
오라클 데이터베이스 함수 (0) | 2021.03.09 |
---|---|
논리 연산자 (0) | 2021.03.08 |
WHERE 조건(비교 연산자 : 비교 조회 조건 주기) (0) | 2021.03.04 |
WHERE 조건 절을 활용한 데이터 검색 (0) | 2021.03.03 |
산술 처리하기(데이터 값끼리 계산하기) (0) | 2021.03.02 |