엑셀보다 쉬운, SQL 1주차

Thomas·2023년 3월 14일
0

Where 절과 자주 같이 쓰는 문법

'같지 않음' 조건 -> !=

'범위' 조건 -> Between

EX)
포인트 3000 ~ 5000인 목록
SELECT * FROM point_users
WHERE point BETWEEN 3000 AND 5000

'포함' 조건 -> in (int,int)

EX)
1,3주차 사람들의 다짐
select * from checkins
where week in (1,3)

like

EX)
select * from users
where email like '%daum.net'
like + '%' 조합 많이 쓰임 -> 앞에 뭐가 있든 daum.com 으로 끝나는 것!

EX2)
select * from users
where email like 'a%t'
-> a으로 시작해서 t로 끝나는 것!

퀴즈
결제수단이 CARD가 아닌 주문데이터만 추출하기
-> select * from orders
where payment_method != 'CARD'

20000~30000 포인트 보유하고 있는 유저만 추출해보기
-> select * from point_users
where point BETWEEN 20000 and 30000

이메일이 s로 시작하고 com로 끝나는 유저만 추출해보기
->select * from users
where email like 's%com'

이메이이 s로 시작하고 com로 끝나면서 성이 이씨인 유저만 추출해보기
-> select * from users
where email like 's%com'
and name = '이'

이외 유용한 문법 배워보기

일부 데이터만 가져오기: Limit

Ex) 카카오페이로 결제한 목록 5개
select * from orders
where payment_method = 'kakaopay'
limit 5

진짜 큰 테이블(몇십만 데이터)을 어떻게 생겼나 조회할 떄 사용

중복 데이터는 제외하고 가져오기: Distinct

Ex) 총 결제방법 보기(중복제거)
select DISTINCT(payment_method) from orders

몇 개인지 숫자 세보기: Count

Ex) 성이 황씨인 사람 몇명인지 세기
SELECT count(*) from users
where name = '황**'

EX2) 모든 성 몇개인지 세기
SELECT count(DISTINCT(name)) from users

퀴즈 풀어보기

select 쿼리문, where 절 연습하기
성이 남씨인 유저의 이메일만 추출하기
-> SELECT email FROM users
WHERE name = '남**'

Where 절과 자주 같이쓰는 문법 연습하기
Gmail을 사용하는 2020/07/12~13에 가입한 유저를 추출하기
-> SELECT * FROM users
WHERE email LIKE '%gmail.com'
AND created_at BETWEEN '2020-07-12 00:00:00' AND '2020-07-13 23:59:59'

이외 유용한 문법 연습하기
Gmail을 사용하는 2020/07/12~13에 가입한 유저의 수를 세기
-> SELECT count(*) FROM users
WHERE email LIKE '%gmail.com'
AND created_at BETWEEN '2020-07-12 00:00:00' AND '2020-07-13 23:59:59'

숙제
naver 이메일을 사용하면서, 웹개발 종합반을 신청했고 결제는 kakaopay로 이뤄진 주문데이터 추출하기
-> SELECT * FROM orders
WHERE email LIKE '%naver.com'
AND course_title = '웹개발 종합반'
AND payment_method = 'kakaopay'

profile
Backend Programmer

0개의 댓글