<목차>
ㅇ WHERE 절
ㅇ 참고자료 <Do it! 오라클로 배우는 데이터베이스 입문>
ㅇ WHERE
SELECT
FROM
WHERE 조건식(= 컬럼 + 연산자 + 값)

- 조건절, 행을 제한하는 절
- 항상 FROM절 다음에 위치
- 절 실행 순서
- 1번) FROM절 : 내가 물건 찾으려면 물건 있는 창고로 가야지~
- 2번) WHERE절 : WHERE절 실행돼서 조건에 맞는 행들만 가져와 (필터링 돼)
- 3번) SELECT절 : 필터링 된 안에서 셀렉트 절을 수행
- 즉, WHERE절 먼저 실행. 조건을 줘서 행을 제한한 후 SELECT절 실행
ㅇ WHERE절 쓸 때 반드시 지켜야 할 3가지
(조건식)
- 컬럼 + 연산자 + 값 : 연산자가 컬럼과 데이터 값을 비교해 줌
(값을 사용할 때)
- 문자, 날짜에는 작은따옴표 ' '
- 대소문자 구분
- 연산자는 값을 비교할 때 (= 값이 있는지 찾을 때) 아스키코드 사용
- 즉, 저장된 포맷 그대로 사용해야 해
- 따라서, 내가 가진 데이터의 형식을 사전에 철저히 파악해야 해
예) 날짜데이터 - 연월일인지, 일월연인지
ㅇ WHERE절에 컬럼 이름이 아닌 ALIAS 쓰면? 에러나
- WHERE절이 먼저 실행되기 때문에
- ALIAS명은 테이블의 컬럼 이름이 아니야. 출력이 되는 열머리글을 변경해주는 거야
- 따라서 웨어절에는 알리아스를 쓸 수 없어!!!!
ㅇ 실습할 때 권장사항
: WHERE절에 명시한 컬럼을 SELECT LIST 절에도 명시하자.
- 셀렉트 리스트 절에 넣지 않으면 조건절에서 뭘 사용했는지 안 보여
- 코드를 봐야만 무슨 결과인지 해석 가능해
ㅇ 실습1 : 90번 부서에 근무하는 사원의 이름과 급여를 출력하시오.
- 1단계 : 셀렉트 리스트절 찾기 : select last_name, salary
- 2단계 : 어디서 찾을 건지 : from employees
- 3단계 : 90번 부서라는 조건 : where department_id=90
ㅇ 실습2
SELECT last_name, job_id, department_id
FROM employees
WHERE last_name = 'Whalen'
- 직역 : Whalen 이라는 사원의 이름, 업무, 부서번호
- last_name 은 첫 글자 대문자, 나머지 소문자
(연산자 = 을 사용할 때는, 이 포맷을 그대로 사용해야 해)
- 'whalen'(소문자) 로 검색하면 no rows selected 나와..ㅋㅋ
CF. WHERE절이 들어가 있는 게 진정한 셀렉션.프로젝션이야.
= 조건에 맞는 데이터를 보겠다.