Crie uma nova tabela com
user_id
, comment_id
e vote TINYINT(1)
. Um valor de
1
em vote
é um sinal de positivo, Um valor de 0
em vote
é um polegar para baixo. Tenha uma CHAVE ÚNICA restrição em
(comment_id, user_id)
. Se você seguir o acima, será fácil verificar se um usuário votou em um comentário específico, se você quiser ver rapidamente (como na execução rápida) todos os comentários que um usuário fez, você também deve adicione um
INDEX
para user_id
. Quando um usuário vota, você pode usar
REPLACE INTO
para user_comment_thumbs
, como abaixo:REPLACE INTO `user_comment_thumbs` (user_id,comment_id,vote)
VALUES (@user_id, @comment_id, @vote);
Se o usuário já tiver feito um voto, a entrada na tabela será atualizada, caso contrário, uma nova linha será inserida.