08
30

건강하게 sql을 하기 위해 필요한 준비

1. 문제의 발단.

  • sql 명령어들은 공식처럼 크게 어렵지 않다. 형태를 외워 놓으면 쓰기 편하고, 잊어버린다고 해도 검색하면 다 나온다. 어떨 때 어떤 명령어를 쓰는지 어렴풋이 알고만 있으면 된다.
  • 하지만 JOIN의 경우는 헷갈린다. 무엇이 어떻게 합쳐지는지 어떤 식으로 돌아가는지 어렴풋이라도 알기 위해서는 정리가 필요하다고 생각했다.

2. JOIN?

  • 여러 개의 테이블들을 합쳐서 데이터를 검색할 때 사용할 수 있다.
  • 각 테이블들은 같은 값을 가지는 '칼럼'을 각각 가지고 있어야 한다.

3. JOIN 명령어의 기본적인 형태

SELECT 가지고 올 테이블.컬럼1, 가지고 올 테이블. 칼럼 2... FROM 기준이 될 테이블 LEFT 혹은, RIGHT 혹은, FULL 혹은 INNER JOIN 비교할 테이블 ON 조건 1, 조건 2...

4. 그림으로 보는 JOIN의 종류

  • 이 그림에 색칠된 부분을 우리는 얻게 된다.
  • 예를 들어, INNER JOIN(위 그림에는 INNER가 빠져있다)을 사용할 때, 왼쪽의 테이블과 오른쪽의 테이블을 겹쳐 보았을 때, 둘 다 에게 공통으로 가지고 있는 값이 있는 부분만 검색할 수 있게 되는 것이다.

5. 예시로 보는 INNER JOIN

T1 :

SHIFT_S NAME
1 Hendrix
1 Mark
3 Yeel
6 Anjeli

T2 : 

ID SHIFT
1 Mon, Tue
2 Wed, Thu
3 Fri, Sat
4 Sun, Mon
5 Tue, Wed
6 Thu, Fir

SELECT T1.NAME, T2.SHIFT FROM T1 INNER JOIN T2 ON T1.SHIFT_S = T2.ID

결과 :

NAME SHIFT
Hendrix Mon, Tue
Mark Mon, Tue
Yeel Fri, Sat
Anjeli Thu, Fir
COMMENT