사용자가 글을 올리거나 블로그를 작성하는 작은 프로그램을 만들고 있습니다. 이러한 게시물에서 다른 사용자는 페이스 북에서와 같이 게시물을 좋아하거나 싫어하거나 스택 오버플로에서와 같이 게시물을 공감 또는 하향 투표 할 수 있습니다. 나는 일반적으로 사용되는 좋은 데이터베이스 구조를 알고 싶습니다. 프로그램은 그 구조와 효율적으로 작동합니다. 두 가지 옵션이 있습니다
먼저
게시하다:
id head message datepost likes dislikes
1 ab anchdg DATE 1,2,3 7,55,44,3
위와 같이 id
postid입니다. 좋아요 열에 1,2,3
는 게시물이나 블로그를 좋아하거나 투표 한 사용자의 ID가 있습니다. 7,55,44,3
게시물이나 블로그를 싫어하거나 다운 보증 한 사용자의 ID입니다.
둘째
게시하다:
id head message datepost
1 ab anchdg DATE
좋아요 :
id postid userid
1 1 1
2 2 2
싫어함 :
id postid userid
1 1 7
2 1 55
이런 식으로, 내가 좋아하는 것과 싫어하는 것이 포스트의 좋아하는 것을 얻기 위해 두 개의 분리 된 테이블을 만들어야한다. 이런 식으로, 테이블 은 Likes
& & Dislikes
크게 채워질 것입니다. 이로 인해 테이블이 무거워지고 처리 속도가 느려질 수 있습니다.
그래서이 작업을 수행하는 더 좋고 표준적인 방법이 무엇인지 알고 싶습니다.