我想在Rails 3.2 (MYSQL)中构建一个查询,在这里,我根据与其交互的朋友的数量对一组帖子进行排序。我可以限制这件事持续7天。我目前的想法是:
Interactors
谢谢!
发布于 2012-01-31 14:52:30
假设有一个Friend表包含UserID和FriendID,而PostInteraction表包含PostID和UserID,那么您可以:
select pi.PostID, count(distinct f.FriendID) as Count
from PostInteraction pi
inner join Friend f on pi.UserID = f.FriendID
where f.UserID = @MyUserID
group by pi.PostID
order by count(distinct f.FriendID) desc我假设同一个朋友可以与一个帖子进行多个交互,并且您只想计数一次,因此在计数中使用DISTINCT。
https://stackoverflow.com/questions/9081344
复制相似问题