使用laravel框架版本3的家伙,我想得到最多的10个活跃用户(谁上传了大量的图片)。我的表结构:用户:
id,username ..图片:
id,user_id,views..然后我想显示他们图片的视图总数,例如:图片1的视图是:图片2的150次视图是: 100,所以用户的总数将是250,等等。有人能帮上忙吗?
发布于 2013-04-12 16:49:40
SQL查询如下所示:
SELECT
COUNT(*) as numPics,
SUM(p.views) as totalViews
FROM
pics p
INNER JOIN
users u
ON
p.user_id = u.id
GROUP BY p.user_id
ORDER BY numPics DESC LIMIT 10但是,根据您拥有的数据数量,我强烈建议避免这种实时聚合,并将寻求缓存它。
https://stackoverflow.com/questions/15976359
复制相似问题