본문 바로가기

항해 99 사전 과정

항해 99 온보딩 2일차 SQL

1. 시작 

오늘은 2일 차가 시작되는 날이다. 어제에 이어서  SQL 문법들을 배우는 시간을 가졌다. join부터 시작해서 subquery까지 알아보자.

 

 

2. JOIN

 

여기서 말한 'key'에 대하여 더 알아보자.

users 테이블과 orders 테이블이 join을 하고 싶으면 두 테이블 사이에 공통된 필드가 있는지 찾아본다.

공통된 필드를 찾았으면 이 필드는 두 테이블을 연결해 주는 'key'값이 되는 것이다.

 

join의 정의에 대하여 알아봤으니 종류에 대하여 알아보자.

join은 두가지 종류로 나뉘는데 첫 번째는 'inner join'이고 두 번째는 'left join'이다.

첫 번째 'inner join'에 대하여 알아보자.

1. Inner Join

두 테이블을 연결하는 가장 기본적인 방법이다. 그냥 join을 한다라고 하면 inner join이라고 생각하면 된다. 두 테이블을 연결할 때 공통 필드를 가지고 있어야 하는 특징이 있다. 문법 구조는 아래와 같다.

2. Left Join

A 테이블과 B 테이블을 left join한 그림이다. A의 정보와 A와 B가 겹치는 부분이 추출된 것을 볼 수 있다. 나머지 A테이블의 정보와 일치되지 않는 부분은 NULL값을 반환하게 된다. 문법 구조는 아래와 같다.

3. SUBQUERY

SubQuery란 하나의 SQL문 안에 포함되는 또 다른 SQL문을 말한다. subquery를 사용하면 더 편하게 원하는 데이터를 얻을 수 있다. 

 

1.SELECT

위 그림을 보면 select에 들어가는 SubQuery 구조를 알 수 있다.

다른 테이블에서 어떤 값을 가져올 떄 주로 쓰인다. 위 문장에서는 likes의 평균을 가져오는데 SubQuery를 사용했다.

2. WHERE

where에 들어가는 SubQuery를 알아보자

위 그림은 where에 들어가는 SubQuery 구조이다.

위 그림을 분석해보자. 

위그림과 같은 구조로 돌아가는 것을 알 수 있다.

3.FROM

from에 들어가는 SubQuery는 가장 많이 사용되는 유형이다.

위 그림을 분석해보자

먼저 서브쿼리의 select가 실행되고, 이것을 테이블처럼 여기고 밖의 select가 실행된다.

4. 정리하며

마지막 SubQuery부분을 정리하면서 아직 내 언어로 설명하기 어려운 부분들이 있어 강의노트 내용을 적는 형태로 해서 조금 아쉬운 느낌이 있다. 다시 한번 복습하며 내 것으로 만들어야 할 것 같다.

 

https://teamsparta.notion.site/SQL-4-e8025c63b6bd4e6bb27ae43da874350d

 

[스파르타코딩클럽] 엑셀보다 쉬운 SQL - 4주차

매 주차 강의자료 시작에 PDF파일을 올려두었어요!

teamsparta.notion.site

 

'항해 99 사전 과정' 카테고리의 다른 글

항해 온보딩 3~4일차 SQL  (1) 2023.03.24
항해99 온보딩 커리큘럼 1일차 -SQL  (1) 2023.03.21