프로그램
- DBeaver : https://dbeaver.io/
DBeaver Community | Free Universal Database Tool
DBeaver Universal Database Tool Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase,
dbeaver.io
Select 쿼리문
- 쿼리문: 데이터 베이스에 명령을 내리는 것
- select 쿼리문: 데이터 베이스에서 ‘데이터를 선택해서 가져오겠다’
- 어떤 테이블에서 어떤 필드의 데이터를 가져올지
- 테이블 보기
show table
- ‘orders’ 테이블 데이터 가져오기 (’orders’ 테이블의 모든 필드 보기)
select * from orders;
Select, Where절
- where 절: select 쿼리문으로 가져올 데이터에 조건을 걸어 주는 것
- orders 테이블에서 pyment_method(필드)가 ‘kakaopay’인 것만 가져오기
select * from orders
where payment_method = "kakaopay";
- 부등호 >, <, >=, <=
select * from point_users
where point > 20000;
- 여러 조건 시 and 사용
select * from orders
where course_title = "앱개발 종합반" and payment_method = "kakaopay";
- 같지 않음 !=
select * from orders
where course_title != "웹개발 종합반";
- 포함 in
select * from checkins
where week in (1, 3); -- week 필드 값이 1,3 인 데이터들만 가져옴
- 범위 between
select * from orders
where created_at between "2020-07-13" and "2020-07-15";
-- 7월 13일, 7월 14일 주문데이터만 가져옴
select * from point_users
where point between 20000 and 30000
-- 2000 ~ 3000 (2000이상 3000미만) 포인트 보유하고 있는 유저만 추출
- 패턴(문자열 규칙) like ‘%’ 이용
select * from users
where email like '%gmail.com';
-- email 필드 값이 gmail.com으로 끝나는 모든 데이터
select * from users
where email like '%co%';
-- email 필드 값에 co를 포함하는 모든 데이터
- 일부 데이터만 가져오기 limit
select * from orders
where payment_method = "kakaopay"
limit 5;
-- 조건을 만족하는 5개의 데이터만 보여줌
-- 테이블에 어떤 데이터가 들어있는 잠깐 확인하고 싶을 때 모든 데이터를 다 불러오면 로딩
-- 시간이 오래 걸린다. 따라서 이럴 때 실무에서 limit를 자주 사용한다.
- 중복 데이터는 제외하고 가져오기 distinct
select distinct(payment_method) from orders;
-- 결제 수단 종류와 수를 알 수 있음
- 몇개인지 숫자 세기 count
select count(*) from orders
- distinct와 count 같이 쓰기 → 특정 필드의 데이터 종류의 수를 알 수 있음
select count(distinct(name)) from users; # 회원들의 성씨가 몇개인지 알 수 있음
Source
스파르타 코딩클럽 내일배움단 엑셀보단 쉬운 SQL 1주차
https://spartacodingclub.kr/nb
'Database > SQL' 카테고리의 다른 글
[MySQL] 데이터 베이스 인덱스 (0) | 2022.10.08 |
---|---|
[MySQL] DB, Table, Data, Column 생성, 조회, 수정, 삭제 (0) | 2022.09.26 |
[MySQL] [스파르타코딩클럽 SQL] Subquery, With, 문자열, Case (0) | 2022.07.16 |
[MySQL] [스파르타코딩클럽 SQL] Join, Union (0) | 2022.07.16 |
[MySQL] [스파르타코딩클럽 SQL] Group by, Order by (0) | 2022.07.09 |