【发布时间】:2011-08-22 08:25:36
【问题描述】:
我有 4 张桌子:
用户
record_id first_name last_name
1 John Smith
2 Jim Brown
3 Jane Goodall
投票
record_id poll_question
1 What is your age?
2 What is your occupation?
投票选项
record_id poll_id option_text
1 1 16-20
2 1 21-25
3 2 builder
4 2 technician
投票投票
record_id user_id poll_id option_id
1 1 1 1
2 1 2 1
3 2 1 2
4 2 2 1
给定一个指定的用户,我如何让所有为指定用户回答的投票选择相同选项的其他用户。
理想情况下,它会根据回答相同的问题数量来提供一个降序的用户列表,即投票完全相同的用户将位于顶部,直到没有共同答案的用户。
【问题讨论】:
-
在您的“投票投票”表中,您有字段 poll_id 和 option_id。 record_id 4 的记录具有 poll_id 2 和 option_id 1。由于 record_id 1 具有 poll_id 1,因此这些 id 表示表“投票选项”中的哪条记录并不明显。如果您省略“投票投票”表中的 poll_id 列会更好并让 option_id 列成为“投票选项”record_id 的关键。