Tworzę mały program, w którym użytkownicy publikują posty lub piszą blogi. W tych postach inni użytkownicy mogą lubić lub nie lubić postu jak na Facebooku lub głosować w górę lub w dół głosować jak w przypadku stackoverflow. Chciałbym poznać dobrą strukturę bazy danych, która jest powszechnie używana i program działa skutecznie z tą strukturą. Mam dwie opcje
Pierwszy
Poczta:
id head message datepost likes dislikes
1 ab anchdg DATE 1,2,3 7,55,44,3
W powyższy sposób id
jest postid. W kolumnie „ 1,2,3
Lubię to” znajduje się identyfikator użytkownika, który polubił lub ocenił wpis lub blog. 7,55,44,3
to identyfikator użytkowników, którzy nie lubili lub nie ocenili posta lub bloga.
druga
Poczta:
id head message datepost
1 ab anchdg DATE
Lubi:
id postid userid
1 1 1
2 2 2
Nie lubi:
id postid userid
1 1 7
2 1 55
W ten sposób muszę utworzyć dwie osobne tabele dla ocen pozytywnych i negatywnych. W ten sposób tabele, czyli Likes
&, Dislikes
zostaną mocno wypełnione. Może to spowalniać pracę tabeli.
Chciałbym więc wiedzieć, który jest lepszy i standardowy sposób na wykonanie tego zadania?