我想計算喜歡某個用戶喜歡該帖子的帖子的人數。
Post:
Author - INT
Content - Text
Post_Like:
User_ID - Int
Post_ID - Int
SELECT p.content, count(pl.User_ID) FROM Post p JOIN Post_Like pl ON p.id = pl.Post_ID WHERE pl.User_ID = 40 group by pl.Post_ID
這為每個回傳計數 1,這是錯誤的,但我不確定如何計算所有喜歡,而不是僅計算 ID 匹配的位置。
uj5u.com熱心網友回復:
您可以使用:
SELECT p.content, count(pl.User_ID)
FROM Post p
JOIN Post_Like pl ON p.id = pl.Post_ID
WHERE pl.Post_ID IN (
SELECT u.Post_ID
FROM Post_Like u
WHERE u.User_ID = 40
)
GROUP BY p.content
GROUP BY請注意,您需要在(ONLY_FULL_GROUP_BY sql 模式)中從 SELECT 中列出非聚合列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/510789.html
標籤:mysql加入
