내가 댓글을 달 수있는 여러 객체가있는 PHP 앱에서 작업하고 있습니다. 각 의견은 사용자가 +1 또는 -1 (Digg 또는 Reddit과 같이)을 줄 수있는 상태에서 투표 할 수 있습니다. 지금 나는 user_id와 투표 정보를 가지고있는 'votes'테이블을 가질 계획입니다. 이것은 잘 작동하는 것 같습니다.의견 투표 데이터베이스 구조에 대한 우수 사례
사실, 각 개체에는 별도의 주석 표에 저장되는 수백 개의 주석이 있습니다. 의견을 읽은 후 투표를 집계하고 각 투표를 개별적으로 확인하여 한 번만 투표 할 수 있도록해야합니다. 이것은 작동하지만 데이터베이스 집약적 인 것처럼 보입니다. 단지 댓글에 대한 많은 쿼리입니다.
DB 집약도가 적은 간단한 방법이 있습니까? 현재 데이터베이스 구조가 가장 좋은 방법입니까?
댓글 테이블 :
- USER_ID
- OBJECT_ID
- total_votes
투표 테이블 :
은 현재 데이터베이스 구조에 대한 명확하게하려면- 는 comment_id
- USER_ID
- 투표
최종 목표 :
- 는 사용자가 각 주석 MySQL의 쿼리의 이상과 #에 한 번만 투표 할 수 있도록 허용 (각 개체 여러 의견이 있음)
실제로 도움이됩니다. 감사합니다. 두 개의 기본 키를 갖는 것에 대한 생각은 내 마음을 가로막 지 않습니다. – mdolon