合并2个表并比较SQL / PHP的不同结果

时间:2013-11-16 10:33:56

标签: php mysql sql

我真的在这里努力做到这一点。我看过网上但我不明白其他人在做什么,以及它对我的情况有什么用。

我有一个带问题的问题表(列:question_id,question,answer1,answer2,questioner_id),然后我有一个表(questions_answered),其中有一些人回答了什么问题。 (列:user_id和question_id)

我需要为用户提问,但请确保我不会通过比较user_id和question_id来挑选用户已经回答过的问题。

我正在讨论如何做到这一点。我试过做两组查询并比较数组无济于事。

我现在正试图在1个查询中执行此操作但我不确定如何。

请有人帮助我吗?

如果您需要更多信息,请说

最基本的问候

1 个答案:

答案 0 :(得分:0)

使用子查询

尝试此操作
SELECT * FROM questions  q
WHERE q.question_id NOT IN
(SELECT qa.question_id FROM questions_answered qa WHERE qa.user_id ='1')

或使用NOT EXISTS

SELECT * FROM questions  q
WHERE   NOT EXISTS 
(SELECT * FROM questions_answered qa WHERE qa.user_id ='1')

SELECT * FROM questions  q
WHERE   NOT EXISTS 
(SELECT * FROM questions_answered qa WHERE qa.question_id =q.question_id   AND qa.user_id ='1')

Subqueries with EXISTS or NOT EXISTS