Database alteration: users who voted
I have a post voting system that stores and displays the vote as an integer. When someone clicks on plus the vote increases by 1, when minus - decreases by 1 (exactly the same way as on this website). The problem is that the votes are cookies-based, so when these are refreshed the user can vote again. I would like to limit this to just one vote per user.
Now I would like to ask for advice regarding the database design. Currently I have my custom post type 'Question' and standard WordPress user tables in the database. Question has a custom field called vote that stores the vote as a single integer. The goal is to be able to assign a vote to question in a way that I can print all the users that voted on a particular question or check if user already voted on a particular question.
Should I create another table with votes? Or add a new field in Question or Users? I am not sure about the database logic that I should implement so I would appreciate any advice.