选择没有答案的问题

时间:2011-02-28 10:46:40

标签: mysql database select

我有一个简单的查询疑问。

Question Table
qid question
1   ques1
2   ques2
3   ques3
4   ques4
5   ques5
6   ques6
7   ques7

Answer Table
ansid qid answer
1     1   ans1
2     2   ans2
3     2   ans3
4     4   ans4
5     6   ans5

我有两张桌子。一个用于问题,一个用于答案。问题id(qid)用作答案表中的外键。我想要在答案表中没有答案的选择题。在上面的例子中,我需要问题3,5,7。我的数据库很大,可能包含超过50,000条记录。

由于 阿伦

2 个答案:

答案 0 :(得分:3)

select q.* from question as q
left join answer as a
on q.id = a.qid
where a.qid is null

修改。 此外,最好在答案表上添加一个索引

alter table answer add index iq (qid);

答案 1 :(得分:1)

select * from question where qid not in 
(select qid from answer)