스파르타 SQL - 3주차

heehe·2023년 1월 8일
0

Sparta-coding club

목록 보기
6/16
post-thumbnail

오늘 공부한 내용 📋


  1. 스파르타 SQL 강의 - 3주차 완료
  • Join : 두 테이블의 공통된 정보 (key값)를 기준으로 테이블을 연결해서 한 테이블처럼 보는 것을 의미

  • Join 종류 : left join, inner join

    • Left join : A와 B 테이블 사이 겹치는 부분 포함, B 존재하지 않는 정보까지 보여줌(NULL)
    • inner join : A와 B 테이블 교집합
  • 쿼리가 실행되는 순서 : rom → join → where → group by → select

  • Union : 두 개의 Join을 한번에 보고 싶을 때

(
	select '7월' as month, c.title, c2.week, count(*) as cnt from checkins c2
	inner join courses c on c2.course_id = c.course_id
	inner join orders o on o.user_id = c2.user_id
	where o.created_at < '2020-08-01'
	group by c2.course_id, c2.week
  order by c2.course_id, c2.week
)
union all <-- 여기에 붙여주면 됨
(
	select '8월' as month, c.title, c2.week, count(*) as cnt from checkins c2
	inner join courses c on c2.course_id = c.course_id
	inner join orders o on o.user_id = c2.user_id
	where o.created_at > '2020-08-01'
	group by c2.course_id, c2.week
  order by c2.course_id, c2.week
)
  • Union 사용하면 내부 정렬이 깨지게 되는데, 그때 SubQuery 쓰면 됨

회고 및 코멘트 🙏🏻


  • SQL 3주차 강의 들으면서 Join 연습 많이 해야겠다.
  • 이제 내일만 들으면 4주차 강의도 끝! 수고했다!!
profile
성장하고픈 ISFJ

0개의 댓글