0

我有两张表,一张是对用户提出的问题,另一张是对所有用户提出的所有问题,我想选择具有更高 id 的问题(所以它是新的)不是发送给给定的用户......我的意思是:

第一个表有 3 个字段 :
id, questionid,userid它的名字是userQuestions

otehr 表被调用questions并有 2 个字段:

`qid` and `qText`

当然qid=quesionid

对于给定的userid我如何选择所有未提出的问题userid

假设我有:

`qid` = 1 , `qtext` = 'qtext1'
`qid` = 2 , `qtext` = 'qtext2'
`qid` = 3 , `qtext` = 'qtext3'

在另一张桌子上:

id= 1, questionid= 1, userid= 90

所以这个假设的 SELECT 应该返回 qid= 2 qid= 3

我希望我已经在解释清楚...

4

2 回答 2

3
SELECT * FROM questions WHERE qid NOT IN(SELECT questionid FROM userQuestions WHERE userid = 90);

琐碎而简单

于 2013-01-08T14:01:19.650 回答
2

试试这个:

SELECT Q.qid
FROM questions Q
 LEFT JOIN userQuestions U
   ON Q.qid = U.questionid
 WHERE Q.userid = <user ID>
     AND U.id IS NULL
于 2013-01-08T14:02:37.900 回答