WHERE [SQL]

Kyeong_Bong·2022년 8월 27일
0

SQL

목록 보기
4/5
post-thumbnail

WHERE절

  1. 불러온 데이터에서 조건에 맞는 데이터만 골라옴 : 함수, 연산자 등을 사용

연산자

  • 대부분 WHERE절의 조건식에서 사용되어 원하는 결과만 조회한다.

    1-5번 까진 그냥 JS할때도 많이 봤던 연산자이다.

#연산자설명
1= , !=값과 같은, 값과 같지 않음
2>, >=값보다 큼, 값보다 크거나 같음
3<, <+값보다 작음, 값보다 작거나 같음
4조건1 AND 조건2조건1, 조건2가 모두 참
5조건1 OR 조건2조건1 또는 조건2가 참
★ 6IN ('값1', '값2', ... , '값N')값1, 값2, ... , 값N 중 하나
7BETWEEN 값1 AND 값2값1 과 값2 사이의 값 (값1, 값2 포함)
★ 8IS NULL값이 NULL임
9IS NOT NULL값이 NULL이 아님
★ 10LIKE '패턴'패턴이 같은 값
11NOT LIKE '패턴'패턴이 다른 값

3. SELECT와 같이 사용해보기

[돈까스맛집정보]

가게이름위치가격스타일호불호
A돈까스익산8,000일식카츠불호
B돈까스전주11,000일식카츠
C규카츠홍대13,000규카츠
D돈까스광주9,500경양식카츠
E돈까스구로10,000경양식카츠불호
F돈까스강남15,000일식카츠
G돈까스수원12,000경양식카츠NULL

오늘도 어김없이 돈까스 DATA

1. 위치가 구로인 데이터 ( = )

SELECT *
FROM 돈까스맛집정보
WHERE 위치 = N'구로'
가게이름위치가격스타일호불호
E돈까스구로10,000경양식카츠불호

2. 스타일이 일식카츠가 아닌 데이터 ( != )

SELECT *
FROM 돈까스맛집정보
WHERE 스타일 != N'일식카츠'
가게이름위치가격스타일호불호
C규카츠홍대13,000규카츠
D돈까스광주9,500경양식카츠
E돈까스구로10,000경양식카츠불호
G돈까스수원12,000경양식카츠NULL

3. 가격이 11000원 초과 / 이상인 데이터 - 내림차순 ( >, >= )

SELECT *
FROM 돈까스맛집정보
WHERE 가격 > 11000
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
F돈까스강남15,000일식카츠
C규카츠홍대13,000규카츠
G돈까스수원12,000경양식카츠NULL

SELECT *
FROM 돈까스맛집정보
WHERE 가격 >= 11000
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
F돈까스강남15,000일식카츠
C규카츠홍대13,000규카츠
G돈까스수원12,000경양식카츠NULL
B돈까스전주11,000일식카츠

4. 가격이 11000원 미만 / 이하인 데이터 - 내림차순 ( <, <= )

SELECT *
FROM 돈까스맛집정보
WHERE 가격 < 11000
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
E돈까스구로10,000경양식카츠불호
D돈까스광주9,500경양식카츠
A돈까스익산8,000일식카츠불호

SELECT *
FROM 돈까스맛집정보
WHERE 가격 <= 11000
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
B돈까스전주11,000일식카츠
E돈까스구로10,000경양식카츠불호
D돈까스광주9,500경양식카츠
A돈까스익산8,000일식카츠불호

5. 가격이 11000원 미만이고 '경양식카츠'인 데이터 - 내림차순 ( AND )

SELECT *
FROM 돈까스맛집정보
WHERE 가격 < 11000 AND 스타일 = N'경양식카츠'
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
E돈까스구로10,000경양식카츠불호
D돈까스광주9,500경양식카츠

6. 가격이 11000원 미만이거나 '경양식카츠'인 데이터 - 내림차순 ( OR )

SELECT *
FROM 돈까스맛집정보
WHERE 가격 < 11000 OR 스타일 = N'경양식카츠'
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
G돈까스수원12,000경양식카츠NULL
G돈까스수원12,000경양식카츠NULL
D돈까스광주9,500경양식카츠
A돈까스익산8,000일식카츠불호

7. 위치가 '강남' 또는 '전주'인 데이터 ( IN )

SELECT * 
FROM 돈까스맛집정보
WHERE 거주지 IN (N'강남', N'전주')
ORDER BY 위치
가게이름위치가격스타일호불호
F돈까스강남15,000일식카츠
B돈까스전주11,000일식카츠

8. 가격이 9000원 이상 13000원 이하인 데이터 - 가격기준 내림차순 ( BETWEEN )

SELECT * 
FROM 돈까스맛집정보
WHERE 가격 BETWEEN 9000 AND 13000
ORDER BY 가격 DESC
가게이름위치가격스타일호불호
C규카츠홍대13,000규카츠
G돈까스수원12,000경양식카츠NULL
B돈까스전주11,000일식카츠
E돈까스구로10,000경양식카츠불호
D돈까스광주9,500경양식카츠

9. 호불호가 NULL인 / NULL이 아닌 데이터 ( IS NULL, IS NOT NULL )

SELECT * 
FROM 돈까스맛집정보
WHERE 가격 IS NULL
가게이름위치가격스타일호불호
G돈까스수원12,000경양식카츠NULL

SELECT * 
FROM 돈까스맛집정보
WHERE 가격 IS NOT NULL
가게이름위치가격스타일호불호
A돈까스익산8,000일식카츠불호
B돈까스전주11,000일식카츠
C규카츠홍대13,000규카츠
D돈까스광주9,500경양식카츠
E돈까스구로10,000경양식카츠불호
F돈까스강남15,000일식카츠

10. 스타일이 '일'로 시작하는 데이터 ( LIKE ) [ 중요 ★★★ ]

LIKE '패턴'

  • % : 없거나 1개 이상의 글자
  • _ : 1개의 글자
  • [0-9] : 0-9까지의 숫자
  • [A-Z] : A-Z까지의 영자
SELECT * 
FROM 돈까스맛집정보
WHERE 스타일 LIKE'일%'
가게이름위치가격스타일호불호
A돈까스익산8,000일식카츠불호
B돈까스전주11,000일식카츠
F돈까스강남15,000일식카츠

10 - 1. 가게이름이 A,D,F 중 하나로 시작하는 데이터 ( LIKE ) [ 중요 ★★★ ]

SELECT * 
FROM 돈까스맛집정보
WHERE 스타일 LIKE'[ADF]%'
가게이름위치가격스타일호불호
A돈까스익산8,000일식카츠불호
D돈까스광주9,500경양식카츠
F돈까스강남15,000일식카츠

11. 스타일이 '경'으로 시작하지 않는 데이터 ( NOT LIKE ) [ 중요 ★★★ ]

SELECT * 
FROM 돈까스맛집정보
WHERE 스타일 NOT LIKE'경%'
가게이름위치가격스타일호불호
A돈까스익산8,000일식카츠불호
B돈까스전주11,000일식카츠
C규카츠홍대13,000규카츠
F돈까스강남15,000일식카츠
profile
Junior Developer🔥

0개의 댓글