brunch

You can make anything
by writing

C.S.Lewis

by Raphael Lee Nov 09. 2018

SQL 작성 요령

삼남매 아빠 = 애국자

RDB의 종류와 무관하게 SQL을 작성할 때는 다음의 단계를 참조합니다.

  1. 중심축으로 삼을 테이블을 선정한다.

    - 건수, 값 등에 대한 검증의 기준이 됩니다.

  2. 건수를 기록한다.

    - 데이터를 조립할 때마다, 건수의 증감에 대해 주의 합니다.

  3. 가로로 정보를 추가하는 경우 JOIN을 세로로 정보를 추가하는 경우는 UNION을 사용합니다.

    - 뭐 별로 어렵지 않습니다.

설명을 위한 예제 테이블


INNER JOIN

  - 건수의 손실을 주의합니다.

예시 SQL>>

SELECT T1.C11, T1.C12, T2.C22

  FROM T1

 INNER JOIN T2 ON T1.C11 = T2.C21

INNER JOIN 예시 실행 결과


LEFT OUTER JOIN

  - 의도치 않은 Null의 발생을 주의합니다.

  - 조인 조건 부족 시 발생하는 건수의 증가를 주의합니다.

  - RIGHT OUTER JOIN은 순서를 바꾸어 LEFT OUTER JOIN으로 구성합니다.

예시 SQL>>

SELECT T1.C11, T1.C12, T2.C22

  FROM T1

  LEFT OUTER JOIN T2 ON T1.C11 = T2.C21

LEFT OUTER JOIN 예시 실행 결과


FULL OUTER JOIN

  - 어쩔 수 없는 경우가 아니라면 사용하지 않습니다.

예시 SQL>>

SELECT T1.C11, T1.C12, T2.C21, T2.C22

  FROM T1

  FULL OUTER JOIN T2 ON T1.C11 = T2.C21

FULL OUTER JOIN 예시 실행 결과


UNION

  - 중복을 제거하고 결과를 표시합니다.

  - 정렬이 일어나므로 속도의 저하가 있을 수 있습니다.

예시 SQL>>

SELECT C11 FROM T1

UNION

SELECT C21 FROM T2

UNION 예시 실행 결과



UNION ALL

  - 컬럼 개수 및 데이터 유형이 일치하는 데이터를 데이터 조회 순서 그대로 결합하여 표시합니다.

예시 SQL>>

SELECT C11 FROM T1

UNION ALL

SELECT C21 FROM T2

UNION ALL 예시 실행 결과


마치며....

  - 예전에 블로그에 정리했던 거 다시 옮겼습니다.

  - 누구나 알겠지만, 혹시 모르는 사람에게 설명할 때 도움이 되었으면 합니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari