今天在寫自己一個博客項目時遇到了一個數據庫問題,因為對於數據庫自己所知道的還是很淺顯的,對一些查詢語句不怎么熟悉。
我目前有一個文章表和評論表,評論表里面有個post_id對應文章表里面的id,想查詢出來的是文章表的所有內容和每篇文章對應的評論數,遇到的問題就是如果該文章下面如果沒有評論就查不出該篇文章,自己翻閱了數據庫書籍和網上找到了一些資料,終於想出了一個解決的辦法。
以下是兩張表和對應的查詢語句:
文章表

評論表

對應的查詢語句
SELECT posts.*,t1.count FROM posts LEFT OUTER JOIN ( SELECT post_id ,COUNT(*) as count FROM comments GROUP BY post_id ) t1 ON t1.post_id = posts.id order by posts.created desc
結果截圖:

這里如果count等於零時他的值為null
