Erstellen Sie eine neue Tabelle mit user_id
, comment_id
und vote TINYINT(1)
.
Ein Wert von 1
in vote
ist ein Daumen nach oben, ein Wert von 0
in vote
ist ein Daumen nach unten.
Haben Sie einen EINZIGARTIGEN SCHLÜSSEL Beschränkung auf (comment_id, user_id)
.
Wenn Sie den obigen Anweisungen folgen, können Sie leicht überprüfen, ob ein Benutzer eine Stimme für einen bestimmten Kommentar abgegeben hat. Wenn Sie schnell (wie bei der schnellen Ausführung) alle Kommentare eines Benutzers sehen möchten, sollten Sie dies auch tun einen INDEX
hinzufügen zu user_id
.
Wenn ein Benutzer abstimmt, könnten Sie REPLACE INTO
verwenden zu user_comment_thumbs
, wie zum Beispiel unten:
REPLACE INTO `user_comment_thumbs` (user_id,comment_id,vote)
VALUES (@user_id, @comment_id, @vote);
Wenn der Benutzer bereits eine Stimme abgegeben hat, wird der Eintrag in der Tabelle aktualisiert, andernfalls wird eine neue Zeile eingefügt.