作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个具有唯一 ID 的提案表。我有另一个表,其中包含对提案的投票,与正确的提案 ID 以及每行投票的投票和用户名相关联。
现在我想向一位个人用户展示他尚未投票的提案。我该怎么做,可能是针对一位用户的一次查询?
表架构:
建议:
pr_id proposal
1 proposal_text1
2 proposal_text2
3 proposal_text3
票数:
vote_id pr_id vote user
1 1 yes jack
2 1 no jill
3 2 yes jack
所以在一个例子中,我想告诉吉尔她还没有投票给提案 2 和 3。
最佳答案
查询一个用户:
SELECT a.*
FROM Proposals a
LEFT JOIN Votes b
ON a.pr_id = b.pr_id
AND b.user = 'jack'
WHERE b.pr_id IS NULL
查询显示所有用户和他没有投票的提案:
SELECT DISTINCT a.*, b.user
FROM Proposals a
CROSS JOIN Votes b
LEFT JOIN Votes c
ON a.pr_id = c.pr_id
AND b.user = c.user
WHERE c.pr_id IS NULL
ORDER BY b.user, a.pr_id
关于mysql - 在 MySQL 中查找缺失的选票,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19396431/
我是一名优秀的程序员,十分优秀!