데이터 베이스에서 어떤 필드의 데이터를 가져오냐가 핵심이다.
실습은 스파르타코딩클럽에서 제공해주는 실습용 데이터베이스를 활용한다.
(그러므로 나와있는 데이터는 실제 존재하는 값이 아니고 실습을 위해 만들어진 데이터이다)
- 테이블?
아래의 사진은 orders 테이블이라고 한다.
필드는 order_no / created_at 등등 이다.
- 앞으로 사용할 스파르타 데이터베이스 살펴보기
- checkins: 강의실 들어오며 남기는 '오늘의 다짐'이 들어있다
- courses: 스파르타의 개설 강좌 정보가 들어있다
- enrolleds: 유저별 강좌 등록정보가 들어있다
- enrolleds_detail: 유저별 들을 수 있는 영상과, 들었는지 여부가 들어있다
- orders: 주문 (수강등록) 정보가 들어있다
- point_users: 유저별 포인트 점수가 들어있다
- users: 유저 정보가 들어있다
show table;
선택한 데이터베이스안에 있는 테이블을 보여달라
select * from orders;
orders 테이블에서 모든 필드의 데이터를 가져와라
( '*' 은 포든 필드를 나타낸다 )
select created_at, course_title, payment_method, email from orders;
orders 테이블에서 created_at, course_title, payment_method, email 필드의 데이터를 가져와라
- Select, Where 절 등 문법 연습해보기
select * from orders where payment_method = 'kakaopay'
orders 테이블에서 결제수단이 'kakaopay'인 데이터만 가져와라
(데이터 값을 특정지을때 작은 따옴표'' 를 꼭 붙여주어야 한다)
(문자열이기 때문에 숫자에는 사용하지 않는다)
SQL문은 길어지고 방대해지면 아주 헷갈린다. 그래서 줄을 잘 맞춰서 적어줘야 하는데, 프로젝트마다 규칙이 있을 것이지만 가장 중요한건 "잘 보이게" 이다.
select * from orders
where payment_method = 'kakaopay'
이렇게 줄을 나눠서 좀 더 보기 슆게 표현하면 구분하기 좋다.
select * from point_users
where point >= 5000
point_users 테이블에서 포인트가 5000점 이상인 데이터만 가져와라
(이상, 이하, 초과, 미만 등은 부등호를 사용한다)
select * from orders
where course_title = '앱개발 종합반' and payment_method = 'CARD'
orders 테이블에서 주문한 강의(course_title)가 '앱개발 종합반'이면서, 결제 수단이 'CARD'인 데이터만 가져와라
(또는 이라는 명령어는 'and' 대신에 'or'를 사용하면 된다)
(여기서 CARD는 소문자여도 상관없지만, 가시성이 좋아야 하며 통일성이 있으면 좋기 때문에 같은 값의 모양으로 적어주는것이 좋다)
select * from point_users
where point > 20000
포인트가 2만점보다 많은 유저만 뽑아보기
select * from users
where name = '황**'
성이 황씨인 유저만 뽑아보기
select * from orders
where course_title = '웹개발 종합반' and payment_method = 'CARD'
'웹개발 종합반'이면서 결제수단이 'CARD'인 주문건만 뽑아보기
Tip
1. show tables로 어떤 테이블이 있는지 확인
2. select * from 테이블명 쿼리를 확인해보기
3. 원하는 정보가 없으면 다른 테이블도 확인
4. 찾았다면, 조건을 걸 필드명과 값을 확인해서 찾고
5. select * from 테이블명 where 조건 으로 쿼리 완성하기
'SQL' 카테고리의 다른 글
group by 사용해보기 (0) | 2022.05.05 |
---|---|
group by, order by 가 뭔데? (통계 관련 최대 / 최소 / 평균 / 개수) (0) | 2022.05.05 |
Select, Where 실전 퀴즈 풀어보며 익히기 (0) | 2022.05.05 |
Where 절과 자주 같이 쓰는 문법 써보기 (0) | 2022.05.03 |
SQL study start (1) | 2022.05.03 |