統計數據這是數據庫我的表結構集團通過與一個查詢
我想在計數後領域獲得每個後喜歡數喜歡表並使用foreach
循環顯示每個帖子。
我的問題是
有沒有一種方法,我可以用一個查詢與JOIN
,GROUP BY
和COUNT
表做到這一點,而不是創建多個查詢。
統計數據這是數據庫我的表結構集團通過與一個查詢
我想在計數後領域獲得每個後喜歡數喜歡表並使用foreach
循環顯示每個帖子。
我的問題是
有沒有一種方法,我可以用一個查詢與JOIN
,GROUP BY
和COUNT
表做到這一點,而不是創建多個查詢。
select p.id, p.title, p.content, count(l.id) as likes_count
from posts p
left join likes l on l.post = p.id
group by p.id, p.title, p.content
http://sqlfiddle.com/#!9/bca8ee/1
SELECT p.*, COUNT(l.id)
FROM posts p
LEFT JOIN likes l
ON l.post = p.id
GROUP BY p.id
是的,這部作品在MySQL。但我不會稱之爲功能。根據您選擇的列進行分組或彙總是令人誤解的。而且在其他數據庫引擎中不起作用。特別是新手會覺得困惑。 –
謝謝,但你能告訴我什麼是p和l? –
這些是表'posts'和'likes'的別名。你可以像這樣定義:'...來自帖子p'或'...來自帖子作爲p''。他們不需要在這種情況下,但使查詢更短 –
有沒有辦法,我可以聯合這個查詢與這個'SELECT * FROM posts',所以我可以得到所有發佈數據和喜歡在一個'foreach'循環。或者我可以結合兩個'foreach'循環。 –