1. Show : 보여라!
# Show tables
# 모든 테이블을 보여라
2. * : 모든
# Select * from orders
# orders의 모든 필드를 가져오라
3-1. = : 같다
3-2. != : 같지 않다
# where name_title != '던전'
# name_title이 '던전'과 같지 않은 것을 가져오라
4. Between : 범위
# where created_at Between '2022-01-01' and '2022-01-03'
# created_at이 2022-01-01부터 2020-01-02까지의 값
# 숫자는 작은 따옴표(' ')를 생략 가능
5. In : 포함
# where week in (1,2)
# week가 1, 2를 포함하는 (일치하는)것만
6. like : 패턴문
# where email like 'a%t'
# email이 a로 시작해서 (%는 무엇 값이던지 상관 없이) t로 끝나는
7. Limit : 일부 데이터만 가져오기
# limit 5
# 5개만 가져오라
8. Distinct : 중복 데이터는 제외하고 가져오기
# Select Distinct payment_method from orders o
# 결과값이 4가 나온다면, 4개의 데이터 종류가 존재함
9. Count : 몇 개인지 숫자 세어보기
# Select count(*) from orders o
# 결과값이 10이라면, 해당 조건에 해당하는 것이 10개가 있다는 뜻
10. group by : 범주의 통계를 내어준다
# group by name
# 이전에는 name이 같은 성씨라도 일일히 10개씩 표시 되었다면, group by는 10이라고 표시된다
11. 계산하기
# Select week, min(likes) from checkins c
count : 세어보기
count(*)
# 카운트만 위와 같이, 밑에 있는 나머지는 min(필드명)과 같은 형식으로 써야한다!
min : 최솟값
max : 최대값
avg : 평균값
cum : 합계
12. order by : 정렬하기
# order by count(*)
# 기본적으로 오름차순 (낮은 수부터 정렬), 안 써도 되지만 asc라고도 쓴다
# 내림차순으로 하고 싶다면 desc를 추가한다
# order by count(*) desc
13. Alias : 별칭 (쿼리가 길어질 때, 헷갈리지 않도록 별칭을 지정 가능)
# Select * from orders o
# orders를 o라고 별칭을 붙인다
14. Join : 여러 테이블을 연결하여, 한 테이블처럼 보일 수 있게 한다
# join을 사용하기 위해서는, 각 테이블에서 판단할 수 있는 기준(key 값)이 하나 필요하다
# join의 종류 : Left Join, Inner Join
15. Left Join : 좌측의 테이블을 기준으로 우측의 테이블을 붙여라!
# left join point_users p on u.user_id = p.user_id
# 각 테이블과 테이블끼리 겹치는 부분이 있다면, 겹치는 부분을 key 값이라고 고려하고 한 테이블을 기준으로 삼아서
다른 테이블을 이어붙이는 것이다.
# NULL 값이 표기되는 사람도 있는데, 테이블끼리 겹치지 않는 부분의 값들은 상대 테이블에는 없을 수도 있기 때문에 그렇게 보일 수도 있다!
16. Inner Join : 테이블끼리의 교집합을 기준으로 테이블을 붙인다
# Inner join point_users p on u.user_id = p.user_id
# Inner Join : 포인트가 있는 값만, 즉 교집합의 값만 나온다
# 즉 좌측의 A, 우측의 B, 서로가 겹치는 C가 있다고 고려한다면?
# Left Join은 좌측의 A(A+C)에 B를 붙이는 느낌이고
# Inner Join은 C를 기준으로 Join을 실행하는 느낌이라고 보면 된다
# Inner Join을 먼저 입문하길 권한다. Left Join은 순서에 영향을 크게 받는 반면 (테이블의 순서를 바꾸면 다른 값이 나올 수도 있다), Inner Join은 교집합이므로, 순서를 바꾸더라도 같은 값이 나오기 때문이다!
17. Union : Select를 두 번 해야하는 것을, 두 필드명이 같을 때 한번에 모아서 보고 싶은 경우게 사용 가능하다
18. Subquery : 한 SQL 쿼리 안에 또 다른 SQL 쿼리가 있는 것이다
19. Substring : 문자열 정리
# 문자열을 쪼개거나, 문자열의 일부만 잘라내어 내가 필요한 부분만큼만 볼 수 있다
20. Case : 경우에 따라 원하는 값을 새 필드에 출력하기
'SQL' 카테고리의 다른 글
[SQL] Substring, Case 연습 (0) | 2022.11.06 |
---|---|
[SQL] Substring (문자열 정리), Case문 (조건문) (0) | 2022.11.06 |
[SQL] Subquery from절 연습, with절 (0) | 2022.11.06 |
[SQL] Subquery where, select절 연습 (0) | 2022.11.06 |
[SQL] Subquery (0) | 2022.11.05 |