Sto realizzando un piccolo programma in cui gli utenti pubblicano post o scrivono blog. Su questi post, altri utenti possono apprezzare o non apprezzare il post come in Facebook o aumentare il voto o ridimensionare il post come in StackOverflow. Mi piacerebbe conoscere una buona struttura di database che è comunemente usata e il programma funziona in modo efficiente con quella struttura. Ho due opzioni
Primo
Inviare:
id head message datepost likes dislikes
1 ab anchdg DATE 1,2,3 7,55,44,3
Nel modo sopra, id
è il postide. Nella colonna 1,2,3
Mi piace è l'ID dell'utente a cui è piaciuta o aggiunta la votazione al post o al blog. 7,55,44,3
è l'id degli utenti che non hanno gradito o votato per il downgrade del post o del blog.
Secondo
Inviare:
id head message datepost
1 ab anchdg DATE
Piace:
id postid userid
1 1 1
2 2 2
Non mi piace:
id postid userid
1 1 7
2 1 55
In questo modo, devo creare due tabelle separate per Mi piace e Non mi piace per ottenere Mi piace dei post. In questo modo, le tabelle cioè Likes
e Dislikes
verranno riempite pesantemente. Ciò potrebbe rendere la tabella pesante e l'elaborazione lenta.
Quindi, vorrei sapere qual è il modo migliore e standard per raggiungere questo obiettivo?