Если бы не было какой-то хитрости, которую я не учел, я бы подумал, что вам нужно будет создать отношения «многие ко многим» между пользователями и элементами, за которые проголосовали.
Каждый раз, когда кто-то голосуетили вниз, вы бы добавили запись в таблицу присоединения.Это единственный способ, который я вижу, чтобы отследить, за какого пользователя уже проголосовали, и быть в состоянии отследить как количество положительных, так и отрицательных голосов - как это делает stackoverflow.