follow table 과 user table을 어떻게 연결할 것인가? user table이 2개 있다고 생각해보자. 그렇다면 follow table은 user1과 N 대 1, user2과도 N대 1 을 맺을 것이다. 그러나 실제로는 user table이 하나다. 고로 user table과 N대 1 관계를 2번 맺어주면 된다.
Data type이 artist,user 등으로 정해져있을 때 ENUM으로 선언해줄 수 있다.
user_id 로 선언해주든 id로 선언해주든 상관없지만, 모든 id naming은 통일돼어야 한다. ( 현업에서는 user_id 식으로 사용된다 )
하나의 Entity가 몇 개의 상태를 가질 수 있느냐. 헷갈릴 때는 먼저 종속성에 대해서 먼저 생각해보면 쉽게 떠올려 볼 수 있다.
언제 table을 뺴주느냐? 확장성이 있으면 빼준다.
payment 대신 genre 로 생각해봐도 좋다.
follow table에서 위 2개가 pk가 아니라 follow table만의 pk가 있다고 생각해보자. 그러면 pk가 3개라서 1번 유저가 2번을 팔로잉 하는 경우 ( 1 2 ) 경우가 끝없이 나올 수 있다. 그래서 pk는 user_id로만 이루어진 2개여야 한다.
직접 접근 뿐 아니라 간접으로도 이어져있으면 간접접근으로 가져온다.