我有一张问题答案表。 该表包括
ID,idOfQuestion和用户
问题表包括
ID,消息等..
我想要做的是找到某个用户,然后找到他或她已经回答的所有idOfQuestions,然后我想在问题表中搜索所有与第一个没有相同idOfQuestions的问题查询。
注意:ifOfQuestion在answer = ID中有问题
这应该都在sql
中答案 0 :(得分:1)
如果您想找到他们没有回答的问题,可以使用外部联接
e.g。
SELECT q.*
FROM Questions q
LEFT JOIN Answers a ON q.ID = a.idOfQuestion AND a.User = 'UserIdValue'
WHERE a.idOfQuestion IS NULL
对WHERE使用LEFT JOIN ... IS NULL这样意味着它只返回Answers表中没有匹配行的问题+ UserId
答案 1 :(得分:1)
我不知道我清楚地理解了你的问题,但看看这个问题。
SELECT *
FROM QuestionTable
WHERE ID NOT IN
(SELECT IDOFQuestion as ID FROM tableQuestion WHERE USER = 'USERHERE')
答案 2 :(得分:0)
NOT EXISTS变种:
SELECT q.*
FROM Questions q
WHERE NOT EXISTS
(SELECT NULL FROM Answers a
WHERE q.ID = a.idOfQuestion AND a.User = 'UserIdValue')