
흥미가 생겼더 개발에 시작을 위해서 코딩과 SQL공부를 시작했다. 강의를 다 듣고 SQL를 마무리 하기 위해서 내가 배웠던 지식들을 정리를 해보았다.
1주차- Select, Where
데이터를 불러오고 (Select), 조건에 맞게 필터링 하는 것 (Where)
2주차-Group by, Order by
데이터를 범주에 따라 묶어서 통계치를 구하고 (Group by), 정렬하는 것 (Order by)
3주차-join
여러 데이터를 합쳐서 분석하기 (Join), 더 쉽고 깔끔하게 원하는 데이터를 얻기 (Subquery)
4주차-Subquery,Case,With
데이터를 좀 더 편안한 정리를 위해 나온 공식
-----------------------------------
1주차
쿼리(Query): 데이터 베이스에 명령을 내리는 것 데이터 정리의 가장 기본 형태
ex) select * from 테이블명
2주차
Where 절의 개념:
Where 절은, Select 쿼리문으로 가져올 데이터에 조건을 걸어주는 것을 의미
ex) where 테이블 명= "해당 데이터정보" -- where payment="card"
결제수단이 카드인것만 가져와줘 이런뜻
일부 데이터만 가져오기: Limit
데이터가 너무 많을때 제한을 두는 기능
ex) limit num; -- limit 5; 정보 테이블에서 5개만 제한이라는 뜻
Where 절과 자주 같이쓰는 문법 배우기
1.'같지 않음' 조건 걸어보기- !=
2.'범위' 조건 걸어보기- between
3.'포함' 조건 걸어보기- in
4.'패턴' (문자열 규칙) 조건 걸어보기-like
문법 전체 예시)
1.where course_title != "웹개발 종합반";
2.where created_at between "2020-07-13" and "2020-07-15";
3.where week in (1, 3);
4.where email like '%daum.net';
중복 데이터는 제외하고 가져오기: Distinct
select distinct(필요정보) from 테이블;
몇 개인지 숫자 세보기: Count
select count(*) from 테이블
3주차
범주의 통계를 내주는 Group by
select 필요정보, count(*) from 테이블 group by 테이블;
진행 순서 = from → group by → select
통계 오름차순 내림차순 정리 Order by
order by 정렬 기준 테이블 desc; - desc=내림차순
4주차
여러 정보를 한 눈에 보고 싶다면 Join
Join이란?
두 테이블의 공통된 정보 (key값)를 기준으로 테이블을 연결해서 한 테이블처럼 보는 것을 의미해요.
inner join 테이블 on 1.A = 2.A;
쿼리 안의 쿼리라는 의미 Subquery
자주 쓰이는 Subquery 유형
1.Where 에 들어가는 Subquery- where 필드명 in (subquery)
2.elect 에 들어가는 Subquery- select 필드명, 필드명, (subquery) from
3.From 에 들어가는 Subquery -자주 쓰이는 유형
With절
보기좋게 정리하는 데이터 정리 문법
with table1 as(~) table2 as(~) 이러면 table1,table2 안에 공식
포함 되어서 쉽게 나열할수 있다.
실전에서 유용한 SQL 문법 (문자열, Case)
1.문자열 데이터 다뤄보기
문자열 데이터를 원하는 형태로 한번 정리해야 하는 경우가 많습니다.
그때는 SUBSTRING 문법을 사용한다.
ex) SUBSTRING(문자열, 출력을 하고싶은 첫 글자의 위치, 몇개의 글자를 출력하고 싶은지) -- substring(문자열,1,10)
2.경우에 따라 원하는 값을 새 필드에 출력해보기 CASE
조건에 따라서 값을 지정해 주는 CASE
ex) CASE 테이블
WHEN 조건1 THEN 값1 WHEN 조건2 THEN 값2 ELSE 값3 END
테이블이 조건1일 때는 값1을 조건2일 때는 값2를 반환하고 조건에 맞지 않는 경우에는 값3을 반환함