[코딩애플] SQL 05강 WHERE 로 데이터 필터링하기

devdevedddddd·2023년 1월 15일

필터링, where

SELECT * FROM product p WHERE 조건식;

SELECT * FROM product p WHERE 카테고리 = '가구';
SELECT * FROM product p WHERE 가격 >= 5000;

유의사항 문자타입 자료 표현할 때는 문자

  • (참고) 문자에도 부등호 사용가능

BETWEEN / AND 연산자

가격이 5000 ~ 8000?
5000원 이상, 8000원 이하
A ~ B 사이의 값을 필터링 하고 싶으면
컬럼명 BETWWEN A AND B

SELECT * FROM product p WHERE 가격 BETWEEN 5000 AND 8000;

강의노트

0:00 csv 파일 테이블로 가져오기

2:24 행을 필터링하려면 WHERE

4:45 조건식에 들어가는 비교연산자

8:19 BETWEEN / AND 연산자

▲ 오늘은 데이터를 좀 많이 넣어두고 수업을 진행해봅시다.

직접 적어도 되는데 귀찮으면 강의하단 파일 다운받아서 DBeaver에서 불러오면 됩니다.

csv 파일을 테이블에 불러오려면

  1. 기존 데이터는 전부 드래그해서 삭제 & 저장

  2. 왼쪽 파일트리에서 테이블에 우클릭 - 데이터 가져오기

  3. 'csv에서 가져오기' 클릭 후 csv 파일 업로드하기

▲ 3. 한글 들어있는 데이터의 경우 인코딩부분을 euc-kr로 변경해야 안깨집니다.

  1. 그럼 파일명과 동일한 이름으로 테이블을 하나 생성해서 데이터를 담아줍니다.

(그래서 기존에 동일한 이름의 테이블이 있으면 지우고 하는게 좋음)

원하는 행만 필터링 할 수 있는 WHERE 문법

출력되는 행이 너무 많다면

WHERE 문법을 뒤에 붙여서 원하는 조건으로 필터링할 수 있습니다.

SELECT 컬럼명 FROM 테이블명 WHERE 조건식

WHERE 뒤에 조건식을 입력하면 그거와 일치하는 행만 보여줍니다.

조건식 자리에는 컬럼명 = 값 이런 식으로 넣을 수 있는데

등호, 부등호 이런 것들을 전부 이용가능합니다.

SELECT * FROM product WHERE 카테고리 = '가구'

이러면 카테고리 컬럼 값이 '가구' 인 행만 필터링해줍니다.

컬럼명에는 따옴표 안써도 되는데 '문자' 값은 따옴표 안에 적어야합니다.

SELECT * FROM product
WHERE 가격 > 50000 

, <, =, != 이런거 다 됩니다. != 는 같지않다는 소리입니다.

  • 크거나 같다를 표현하고 싶으면 >=, <= 이렇게 등호를 오른쪽에 씁니다.

  • 문자값 표현할 땐 '어쩌구' 이렇게 따옴표 써야하지만 숫자는 따옴표 필요없음

  • SQL 작성시 중간중간 엔터쳐도 상관없습니다

영어숙련자라면 where 라는 단어 보면 자연스럽게 "조건식쓰는 부분이구나~" 가 떠오르는데

토종 한국인은 그런 느낌을 받을 수가 없으니까

그냥 where 조건식 쓰면 행 필터링 된다고 외워가면 됩니다.

SELECT * FROM product
WHERE 가격 BETWEEN 5000 AND 8000 

가격이 5000이상 8000이하 이런걸 필터링하고 싶으면 컬럼명 BETWEEN X AND X 쓰면 됩니다.

X이상 & X이하를 표현하는 문법이라

위 코드에서는 가격이 딱 5000, 8000인 상품도 포함됩니다.

다음 시간인 조건식이 여러개인 경우 어떻게 사용하는지 알아봅시다.

profile
노력과 성장을 기록합니다.

0개의 댓글