2009-11-21 16 views
0

給定下表,如何編寫MySQL查詢以在單個頁面中顯示線程註釋?使用MySQL和PHP顯示線程註釋

表結構:

  • COMMENT_ID
  • comment_parent
  • COMMENT_CONTENT

謝謝。

+1

看到http://stackoverflow.com/questions/597882/how-do-i-implement-threaded-comments,http://stackoverflow.com/questions/1442993/how-to-build -th -aded-comments-with-a-1-or-2-queries,http://stackoverflow.com/questions/1260878/mysql-structure-for-comments-and-comment-replies – 2009-11-21 15:29:42

回答

0
Select comment_content from table where comment_parent != 0; 

然後使用PHP顯示您想要的結果。

+0

對不起,我編輯了我的問題。 – Psyche 2009-11-21 15:34:43

+0

你的問題仍然不清楚。我認爲你要問的是如何用PHP顯示線程註釋。獲取所有評論的查詢只是'從表中選擇*'。然後,您將需要編寫一些PHP以正確的順序顯示註釋。所以基本上你想要做的就是瀏覽所有的父母評論,如果評論有孩子瀏覽並在父母評論下打印這些評論。如果你允許多層線程,那麼它有點複雜。 – Jonathan 2009-11-21 16:28:39

+1

我做了一個遞歸函數,現在一切正常。 – Psyche 2009-11-21 19:21:33

0

根據您想有多深去......但這裏是1線程例子做1個查詢

SELECT * FROM `comment` a LEFT JOIN `comment` b ON a.comment_id = b.comment_id WHERE a.comment_parent = 0 

然後使用PHP來選擇羯羊父評論的變化和顯示。

但它可能會更好地做到這一點在多個速度查詢。你將需要做一些基準,以確保