Maak een nieuwe tabel met user_id , comment_id en vote TINYINT(1) .
Een waarde van 1 in vote is een duim omhoog, een waarde van 0 in vote is een duim omlaag.
Heb een UNIEKE SLEUTEL beperking op (comment_id, user_id) .
Als u het bovenstaande volgt, is het gemakkelijk om te controleren of een gebruiker op een bepaalde opmerking heeft gestemd. Als u snel (zoals bij snelle uitvoering) alle opmerkingen van een gebruiker wilt kunnen zien, moet u ook voeg een INDEX toe naar user_id .
Als een gebruiker stemt, kun je REPLACE INTO . gebruiken naar user_comment_thumbs , zoals de onderstaande:
REPLACE INTO `user_comment_thumbs` (user_id,comment_id,vote)
VALUES (@user_id, @comment_id, @vote);
Als de gebruiker al heeft gestemd, wordt de invoer in de tabel bijgewerkt, anders wordt er een nieuwe rij ingevoegd.