Oracle Database

표를 분해하고, 조립하기 - JOIN

수업소개

하나의 거대한 표는 여러가지 문제를 가지고 있습니다. 이런 문제를 해결하기 위해서는 주제에 따라서 표를 분해해야 합니다. 또 분해한 표를 필요에 따라서 조립해서 거대한 표처럼 보이게 할 수 있어야 합니다. 이 수업에서는 오라클의 표를 분해하고, 조립하는 방법을 소개합니다.

 

 

강의 1

 

 

 

 

강의2

 

 

 

강의3

 

 

 

강의4

SELECT 
    T.id TOPIC_ID, 
    title, 
    name 
FROM topic T
    LEFT JOIN author A 
    ON T.author_id = A.id
WHERE
    T.id = 1
;

 

댓글

댓글 본문
  1. Asanagi
    하나의 테이블에서 중복된값을 다른테이블로 나눠야 하는 이유: 행이 극단적으로 많아지면, 현실적으로 한번에 편집이 불가능 하기때문.

    하지만 테이블을 분리하면, 쓰기는 편하나, 보기에는 가독성이 매우 떨어지기 때문에, 이런 불편을 극복하기 위해 관계형 DB는 JOIN이라는 아주 아름다운 기능이 있음.
  2. Start 2020 07 26
  3. 피고백
    최고!
  4. bigman
    감사합니다.

    topic 테이블 왼쪽에 topic 테이블의 Author_id 와 Author테이블의 id가 같은 author 테이블을 결합시킨다.

    SELECT T.title, T.id, T.description, T.author_id as T_a_id FROM topic T
    LEFT JOIN author a
    ON T.author_id = a.id
  5. GOD IS GOOD
    topic 테이블 옆에 author 테이블의 정보를 보여줘 라고 오라클에 명령합니다!

    Topic 테이블이 왼쪽에 있기 때문에 left 라고 정의해주고 테이블을 붙여주되 막 붙이는게 아닌 특정한 조건에 따라 테이블을 붙여주는데 그것이 on 입니다!

    궁금한것은!!!

    Select * from topic a
    Inner join author b
    On a.authoe_id = b.id

    이 명령과 다른가요.. ㅜ
    언제나 조인은 어렵습니다.. 다 이해했다고 자신만만하게 사용하면 항상 무자비한 셀렉 결과가 리턴됩니다 ㅜㅜㅜ

    (사실 전 파즈 시켜놓고 inner join을 했는데 .. left join이 나와서 당황했습니다.. 이번기회에 잘 배우고 가겠습니다!ㅣ
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기