[英]Get last forum post
我正在創建一個論壇,其中所有主線程帖子都位於一個數據庫表中,而所有答案均位於另一個數據庫表中。 到目前為止,擁有兩個表真是一個地獄。
forum_threads
thread_id | title | post
forum_answers
answer_id | ref_thread_id (foreign key) | post
如何選擇最新帖子,包括主題標題? 該線程可能沒有任何答案,在這種情況下,所有數據都應來自forum_thread。 但是,如果有答案,則應從forum_answers中選擇數據,並從forum_threads中找到標題。
希望你能理解!
如果我將所有內容都放在一個表,答案和主要帖子中,這將更加容易。 盡管有人告訴我這是最好的方法,但還不能確定.....我正在考慮只切換回一張桌子。
謝謝你的幫助!
這應該可以為您提供所需的信息,但實際上您應該將日期存儲在這些表中。
SELECT
ft.thread_id,
ft.title,
COALESCE(fa.post,ft.post) AS post
FROM
forum_threads ft
LEFT JOIN
forum_answers fa
ON (ft.thread_id = fa.ref_thread_id)
ORDER BY
ft.thread_id
LIMIT 1;
它會給你的post
從價值forum_answers
除非有沒有一個線程,那么這將只是給你的post
從價值forum_threads
嘗試這個。
SELECT fa.post, ft.title
FROM forum_threads ft INNER JOIN forum_answers fa ON
ft.thread_id = fa.ref_thread_id
ORDER BY fa.answer_id
LIMIT 1;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.