어제는 SELETE 컬럼 제어에 대해서 학습했는데, 오늘은 WHERE절에 대해 학습하는 날이네요!
WHERE 절은 필터링 기능을 구현한다고 생각하면 되는데요! 이 WHERE을 이용해 원하는 행을 나타내는 필터링에 대한 학습을 진행해봅시다!
SQL 작성 순서는
SELECT 컬럼명
FROM 테이블명
WHERE 조건 대상 칼럼명 / 연산자 / 비교값
으로 진행된다고 학습했던 것을 기억하면서 보면 좋을 것 같네요.
WHERE은 조건 대상 칼럼명 / 연산자 / 비교값 순서로 작성이 되는데 사용할 연산자에 대해서 먼저 보고 넘어가겠습니다.
연산자는 숫자 비교 연산자와 문자 비교 연산자로 나눌 수 있습니다.
* 숫자 비교 연산자 : = / != / <> / ^= / > / >= / < / <= / BETWEEN A AND B 등
* 문자 비교 연산자 : = / != / 포함한다 / 포함하지 않는다. 등
이 연산자를 이용해서 필터링을 진행하면 됩니다.
EX)
1. employees 테이블에서 salary가 10000이 아닌 사람
SELECT *
FROM employees
WHERE salary <> 10000
2. employees 테이블에서 salary가 15000 이상인 사람
SELECT *
FROM employees
WHERE salary >= 15000
3. employees 테이블에서 salary가 17000 초과인 사람
SELECT *
FROM employees
WHERE salary > 17000
4. employees 테이블에서 salary가 10000 ~ 17000 사이인 사람
SELECT *
FROM employees
WHERE salary BETWEEN 10000 AND 17000
어떤 식으로 WHERE절을 이용해서 필터링을 진행하는지 이해가 되셨나요? (저는 이해 되었습니다^^)
알아채신 분들도 계시겠지만 위의 예시는 숫자 비교 연산자였습니다! 다음으로는 문자 비교 연산자를 사용한 WHERE 절을 살펴보겠습니다.
EX)
1. 지역별설치현황 테이블에서 유관기관연계여부가 Y인 사람
SELECT *
FROM 지역별설치현황
WHERE 유관기관연계여부 ='Y'
2. 지역별설치현황 테이블에서 유관기관연계여부가 Y인 사람
SELECT *
FROM 지역별설치현황
WHERE 유관기관연계여부 LIKE 'Y'
3. 지역별설치현황 테이블에서 번지주소에 '성북' 단어를 가진 사람
SELECT *
FROM 지역별설치현황
WHERE 번지주소 LIKE '%성북%'
(%가 없으면 결과가 검색되지 않음
성북% : 성북으로 시작되는 단어
%성북% : 성북을 포함하는 단어
%성북 : 성북으로 끝나는 단어)
문자 비교 연산자가 숫자 비교 연산자보다는 조금 더 복잡하게 느껴지네요...
문자 비교 연산자는 조금 더 학습하면 좋을 것 같습니다:) 오늘의 학습은 여기서 마치도록 하겠습니다!
'공부 자료 > SQL' 카테고리의 다른 글
[9일차] 실전 데이터 분석 (0) | 2023.01.09 |
---|---|
[8일차] And / Or / Not 원하는 행 선택하기 (0) | 2023.01.08 |
[5일차] SQL 기본구문 익히기 (0) | 2023.01.05 |
[4일차] SQL 필수상식 : 용어, 구조 알아보기 (1) | 2023.01.04 |
[3일차] SQL이란? (0) | 2023.01.03 |