mysql从两个表中连接查询结果

时间:2012-07-13 12:33:13

标签: mysql join

我有两个表一来存储问题和其他以存储对问题的回复如下

我在表格中显示了表格结构和列,如下所示

问题表

Question_Id(PK)   |   Question   |   Name   |  EmailAddress

答案表

Answer_Id  |  Question_Id  |   Question  |   Name  |  EmailAddress               

发布了什么问题,它将被添加到问题表中,什么回复人员帖子将被添加到答案表

现在什么时候有人发帖回复问题我应该发邮件给发布问题的人和发布回复问题的人

请为上面的

建议一个mysql查询

谢谢

3 个答案:

答案 0 :(得分:1)

理论上,你应该在应用程序中知道某人正在回复的问题(qid)的id。根据此ID,您可以发出以下查询:

Select EmailAddress from Question where Question_Id=qid
Union
Select EmailAddress from answer where Question_id=qid

根据应用程序的逻辑,这也可能会选择当前用户的地址。如果要避免这种情况,则应在两个选择状态中包含排除当前回复者的条件。类似的东西:

Select EmailAddress from Question where Question_Id=qid and EmailAddress!=curentUserAddress
Union
Select EmailAddress from answer where Question_id=qid and EmailAddress!=curentUserAddress

答案 1 :(得分:0)

Select * 
from questions 
left join answers 
on questions.id = answers.question_id 
where question_id = 1

答案 2 :(得分:0)

select * from Question q, Answer a 
where q.Question_Id = a.Question_id and
      q.Question_Id = question_id