엑셀보다 쉬운 SQL 1주차
2023. 6. 1. 19:22ㆍ항해99
사용목적
데이터를 잘 꺼내기 위해 SQL 을 사용한다.
CRUD
- Create : 데이터의 생성
- Read : 저장된 데이터를 읽어오는 것
- Update : 저장된 데이터를 변경
- Delete : 저장된 데이터를 삭제
SELECT
select 쿼리문은 어떤 테이블에서 어떤 필드의 데이터를 가져올지로 구성된다.
show tables
// 테이블 목록을 가져옴
select * from orders
// * 은 모두 라는 뜻
select order_no, created_at, user_id, email from orders
// orders 테이블의 order_no, created_at, user_id, email 를 가져와줘
WHERE
특정 데이터만 가져올 때 사용한다.
select 쿼리문으로 가져올 데이터의 조건을 걸어준다고 보면 된다.
- orders 테이블에서 결제수단이 카카오페이인 데이터만 가져와줘
select * from orders
where payment_method = 'kakaopay'
// '' 를 뺀다면 문자열이 아니게 된다.
- point_users 테이블에서 포인트가 5000 점 이상인 데이터만 가져와줘
select * from point_users
where point >= 5000
// point_users 테이블에서 point 가 5000 이상인 데이터
- orders 테이블에서 주문한 강의가 앱개발 종합반 이면서, 결제수단이 카드인 데이터만 가져와줘
select * from orders
where course_title = '앱개발 종합반' and payment_method = 'CARD'
WHERE 조건
같지 않음
select * from orders
where course_title != '웹개발 종합반'
범위
select * from orders
where created_at between '2020-07-13' and '2020-07-15'
포함
select * from orders
where created_at between '2020-07-13' and '2020-07-15'
패턴
select * from users
where email LIKE '%daum.net'
// % 는 앞에 뭐가있든간에 daum.net 으로 끝나는 걸 의미
퀴즈
1. 포인트가 20000 점보다 많은 유저만 뽑기
select * from point_users
where point > 20000
2. 성이 황씨인 유저만 뽑기
select * from users
where name = '황**'
3. 웹개발 종합반이면서 결제수단이 CARD 인 주문건만 뽑아보기
select * from orders
where course_title = '웹개발 종합반' and payment_method = 'CARD'
유용한 문법
일부 데이터만 가져오기
select * from orders
where payment_method = 'kakaopay'
limit 5
중복 데이터는 제외하고 가져오기
select distinct(payment_method) from orders
몇 개인지 숫자 세보기
select count(*) from orders
where payment_method = 'kakaopay'
중복 제거 후 성씨가 몇 종류 있는지 보기
select count(distinct(name)) from users
잘 숙지하자
'항해99' 카테고리의 다른 글
엑셀보다 쉬운 SQL 3주차 (0) | 2023.06.02 |
---|---|
엑셀보다 쉬운 SQL 2주차 (2) | 2023.06.01 |
웹개발 종합반 5주차 (0) | 2023.04.09 |
웹개발 종합반 4주차 (0) | 2023.04.08 |
웹개발 종합반 3주차 (0) | 2023.04.08 |