CS - 강의, 서적/[SQLD] 홍쌤의 데이터랩

[SQLD] 1-4. 관계

SH3542 2024. 9. 13. 20:44

[홍쌤의 데이터랩, SQLD n과목 완벽 정리] 영상를 개인이 정리하여 [원작자의 허가 이후] 올린 글이며,

[개인이 추가로 정리한 내용]이 포함되어 있습니다.

 
 
 

홍쌤의 데이터랩

[개정판] SQLD n과목 완벽 정리

https://www.youtube.com/watch?v=rdfHFnqVoRw

 

 


 

 

목차

 

    관계 (Relationship)

    - 엔터티간의 연관성을 정의한 것

    - 인스턴스간의 논리적 연관성을 파악하여 정의

    - 엔터티를 어떻게 정의하느냐에 따라 변경되기도 함

    - RDMBS에서 주로 테이블을 의미하는 Relation 또한 관계임에 주의

     

     

    관계의 종류

    - ERD에서는 존재관계와 행위관계를 구분하지 않음

     

    1) 존재적 관계

    - 한 엔터티의 존재가 다른 엔터티의 존재에 영향을 미치는 관계

    - 엔터티간의 연관된 상태를 의미

    e.g. 부서 엔터티의 삭제가 사원 엔터티의 존재에 영향을 미치는 경우

     

    2) 행위적 관계

    - 엔터티간에 어떤 행위가 있는 것을 의미

    e.g. 고객 엔터티의 행동에 의해 주문 엔터티 발생

     

    3) 계층형 데이터 모델

    - 단일 엔터티 내의 인스턴스 끼리 계층 구조를 가지는 관계

    - 자기 자신 내에서 관계가 발생하며, join을 위해 self join 사용

    관계의 구성

    1. 관계명

    2. 차수(Cardinality)

    3. 선택성(Optionality)

     

    관계의 차수(Cardinality)

    - 한 엔터티의 레코드(인스턴스)가 다른 엔터티의 레코드와 어떻게 연결되는 지를 표현

    e.g. 1:1, 1:N(일대다), N:M(다대다) 등

     

    다대다 관계 주의사항

    - 조인 시 카테시안 곱이 발생할 수 있음

    - 두 엔터티를 연결하는 교차 엔터티를 추가하여 일대다로 치환 가능