본문 바로가기

SQL/ORACLE

테이블의 분해 조립 - 조립하기

 

표를 분해하기 전의 표는 보기에는 좋지만 수정이나 삭제, 추가작업을 할때는 굉장히 나쁘다.

분해하기전의 표

 

 

분해된 표

하지만 표를 분해하면 수정하고 싶으면 해당하는 번호에  참조하고 있는 것이 

한번에 바뀌는 폭발적 효과를 얻을 수 있다. 

쓰기에는 너무 좋아졌지만, 하지만 보기에는 안좋아졌다.

 


 

그렇다면 첫번째 표의 방식은 잘못된 방식인걸까?

 

아니다.

 

 

첫번째 방식은 첫번째 방식대로 읽기가 좋다는 장점이 있고

 

두번째 방식은 쓰기가 좋다는 장점이 있다는 것이다.

 

 

서로 장점과 단점을 달리하는 것들을 합성해서

마치 장점만 존재하는 것이 존재한 것과 같은 환상을 만들어내는것이 공학의 지상 과제이다.

 

 

그럼 어떻게하면 알 수 있을까?

 

그것은 바로 JOIN 이다. 

 

JOIN - 결합한다.

 

즉. 우리가 표를 잘 분리한 다음에 

우리의 필요에 따라서 표들을 순간순간 조립해서

마치 원래 이렇게 조립된 상태로 저장되어 있었던 것과 같은 판타지를 만들어내는 것.

 

그것이 바로 JOIN을 통해서 할 수 있는 일이다.

 

그리고 그것이 관계형 데이터베이스에 정말 중요한 기능이다.

 


JOIN을 활용하면 어떻게 표가 바뀌는 걸까?

 

SELECT * FROM topic LEFT JOIN author ON topic.author_id = author.id;

 

 

JOIN을 쓰게되면 이렇게 저장한것과 같은 ILLUSION을 만들 수 있다.

 

JOIN의 이 기능으로 인해서 관계형데이터베이스가

4-50년동안 데이터베이스 시장을 지배했다고 해도 과언이 아닐정도로 환상적인 기능이다. 

 

 


 

 

관계형 데이터베이스 학습을 하기 이전에

 

표를 분해하고 조립하는 것에 대한 이해와 설명할 수 있을 정도로 

다시 생각해보고 그려도보고, 또 설명해보면서 하면서 잘 이해하고 있는지를 확인하면서 배워나가자.

 

 

 

'SQL > ORACLE' 카테고리의 다른 글

PL SQL(구구단)  (0) 2021.04.08
ORACLE 관리자 (system/sys) 계정 비밀번호 찾기/변경  (2) 2021.04.07
Relation(관계형)  (0) 2021.04.03
서버와 클라이언트  (0) 2021.04.03
SQL  (0) 2021.04.01