数据库结构问题,对于ramdomaly调用的多个问题

时间:2010-09-03 11:19:03

标签: database-design

我想创建一个用于训练多项选择题的网站,问题是我不想为每个用户重复这个问题,我会有很多问题,并且随机获得相同问题的概率非常小,对我来说重要的是用户没有看到同样的问题,所以它是否需要这样做呢?我怎么能这样做..我想保存所有问题ID的列表,并用它来调用尚未使用的新问题并保存更改....这样我必须保存一个加载的字符串登录,包含所有问题,这是一种有效的方法吗?

欢迎任何想法改变结构以获得更好的

1 个答案:

答案 0 :(得分:1)

我认为你的基本想法是正确的。存储用户已在某处回答的问题的ID。与

类似
      asked_questions
--------------------------
user_id           int
question_id       int

有了这个,你可以轻松地做到

SELECT * FROM questions WHERE questions.id NOT IN (SELET asked_questions.question_id FROM asked_questions WHERE asled_questions.user_id = currentLoggedInUserId) LIMIT 10;

并且还有10个用户尚未看到的问题。