조건 절 WHERE를 활용한 데이터 검색
- 원하는 결과를 얻기위해 조건을 제한함.
- WHERE절은 FROM절 다음에 위치한다.
- 문자열, 날짜는 'Single Quotation'안에 표기해야 함.
- 명령어는 대소문자 구분을 하지 않지만,
테이블 내에 저장된 데이터 값은 대소문자를 구분함.
- 명령어는 대소문자 구분을 하지 않지만,
- 수행될 조건 절에는 비교 연산자, SQL 연산자, 논리 연산자, 열 이름, 표현식, 숫자, 문자 등 사용 가능.
SELECT 열 이름 <-- 출력 하려는 열
FROM 테이블 이름 <-- 참조 하려는 테이블
WHERE 원하는 조건 <-- 조건 식
- 데이터가 조회되는 논리 순서
- FROM : 참조하려는 테이블로부터
- WHERE : 해당하는 조건이 맞는
- SELECT: 열을 선택해서 조회
WHERE절에 사용하는 연산자의 종류
연산자 | 설명 | 예시 |
---|---|---|
비교 | 조건을 비교 | =, <, > 등 |
SQL | 비교 조건 확장 | BETWEEN, IN 등 |
논리 | 논리 조건 연결 | AND, OR |
연산자의 우선 순위
괄호 > 부정 연산 > 비교 연산 > SQL 연산
NOT > AND > OR 순
연산자의 순서는 데이터 조회 속도에 영향을 미침 -> 고급 SQL 영역임.
비교 연산자 : 비교 조회 조건 주기
SELECT *
FROM employees
WHERE employee_id = 100;
SELECT *
FROM employees
WHERE first_name = 'David';
SELECT
*
FROM employees
WHERE employee_id >= 105;
SQL 연산자 : 조회 조건 확장하기
BETWEEN
SELECT
*
FROM employees
WHERE
salary BETWEEN 10000 AND 20000;
IN
SELECT
*
FROM employees
WHERE
salary IN (10000, 17000, 24000);
LIKE와 '%'
SELECT
*
FROM employees
WHERE
job_id LIKE 'AD%';
'_'
SELECT
*
FROM employees
WHERE
job_id LIKE 'AD___';
IS NULL
SELECT
*
FROM employees
WHERE
manager_id IS NULL;
논리 연산자 : 조건 논리를 계속 연결하기
AND
SELECT
*
FROM employees
WHERE
salary > 4000
AND
job_id = 'IT_PROG'
OR
SELECT
*
FROM employees
WHERE
salary > 4000
AND
job_id = 'IT_PROG'
OR
job_id = 'FL_ACCOUNT'
!=와 <>
SELECT
*
FROM employees
WHERE
employee_id != 105
SELECT
*
FROM employees
WHERE
employee_id <> 105
IS NOT NULL
SELECT
*
FROM employees
WHERE
manager_id IS NOT NULL
728x90
반응형
'Database' 카테고리의 다른 글
[SQL] GROUP (0) | 2019.12.26 |
---|---|
[SQL] 데이터를 가공하기 위한 DB 함수들 (0) | 2019.12.26 |
[SQL] 데이터 조회 SELECT (0) | 2019.12.23 |
DB(Database)란 (0) | 2019.12.23 |
DB 설치 없이 SQL 실습하기 (0) | 2019.12.21 |