2013-03-08 120 views
1

我正在努力與MySQL現在。基本上,我有三個表:MySQL和連接

  • 評論(ID,thread_id單,...)
  • 線程(ID,forum_id,...)
  • 論壇(ID,...)

而這就是我想出了從一個特定的論壇選擇的所有主題:

SELECT * FROM threads WHERE forum_id IN (
    SELECT * 
    FROM threads 
    WHERE id = 4 
) 

現在,我不明白的是如何選擇從漢邦所有評論cular論壇。

難道不是那麼難嗎?

鮑勃

回答

1

試試這個:

select comments.* 
from forums 
left join threads 
on threads.forum_id = forums.id and forums.id = 4 
left join comments 
on threads.id = comments.thread_id 
; 

閱讀的問題後,我覺得鮑勃希望所有從論壇ID爲4。不知道我的意見是正確的。

+0

Radical先生,這正是我的目標。非常感謝! – Bob 2013-03-09 09:39:39

1

試試這個

select * from threads 
inner join forums 
on forums.id = threads.forum_id 
inner join comments 
on comments.thread_id = threads.id 
where threads.id = 4 
+0

或者他的意思是「where forums.id = 4」。他的原始查詢,儘管它*說*它拉動所有threads.id = 4,實際上可能需要所有forums.id = 4,因爲他說他想從一個特定的論壇拉出所有主題。我不認爲他的問題是完全清楚的。 – Melanie 2013-03-08 22:25:39

+0

@Melanie他沒有給出任何例子,只是他的想法和查詢。 – 2013-03-08 22:29:09

+0

Melanie和echo_me:對不起,沒有任何例子。激進先生幫我解決了問題。 – Bob 2013-03-09 09:40:33