2012-07-13 15 views
3

我有連接查詢的結果二表一儲存問題和其他到答覆的問題存儲如下mysql的兩個表

我已經展示了在表中的表結構和列如下

問題表

 
Question_Id(PK) | Question | Name | EmailAddress 

回答表

 
Answer_Id | Question_Id | Question | Name | EmailAddress    

什麼都問題是貼吧將被添加到問題表,什麼都回復人崗將被加入到回答表

現在,當曾經有人發表回覆的問題,我應該將郵件發送到一個發佈誰問及那些誰已發表回覆的問題

請建議對上述

MySQL查詢謝謝

回答

1

從理論上講,你應該在應用程序知道問題的ID(QID)有人回答。在此基礎上的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 
0
Select * 
from questions 
left join answers 
on questions.id = answers.question_id 
where question_id = 1 
0
select * from Question q, Answer a 
where q.Question_Id = a.Question_id and 
     q.Question_Id = question_id