Tôi nghĩ để làm một bảng khác "bình chọn" thì tốt hơn. Mối quan hệ giữa người dùng và phiếu bầu là n đến n, do đó một bảng mới nên được tạo. Nó phải là một cái gì đó như thế này:
question id (int) | user id (int) | permanent (bool) | timestamp (datetime)
Trường cố định có thể được sử dụng để giữ nguyên các phiếu bầu sau một thời gian nhất định, giống như SO.
Các trường khác có thể được thêm vào tùy theo các tính năng mong muốn. Vì mỗi hàng sẽ chiếm ít nhất 16B, bạn có thể có tối đa 250 triệu hàng trong trước bảng sử dụng 4GB (giới hạn fat32 nếu có một kho lưu trữ trên mỗi bảng, đây là trường hợp của MyISAM và InnoDB).
Ngoài ra, như Matthew Scharley chỉ ra trong một nhận xét, không tải tất cả các phiếu bầu cùng một lúc vào bộ nhớ (khi tìm nạp tất cả bảng trong tập kết quả). Bạn luôn có thể sử dụng mệnh đề LIMIT để thu hẹp kết quả truy vấn của mình.