【发布时间】:2013-05-27 04:09:44
【问题描述】:
我有 2 张桌子:members 和 posts
在表members 中,每个用户都有USERID。在表posts 中,我有每个帖子的PID 和创建帖子的用户的USERID。每个帖子还有number_of_like,表示帖子被点赞的次数。
/*Table: posts*/
----------------
Field Type Null Key Default Extra
----------------- ---------------- ------ ------ ---------- --------------
PID bigint(20) NO PRI (NULL) auto_increment
USERID bigint(20) NO 0
number_of_like int(10) unsigned YES 0
number_of_comment int(10) unsigned YES 0
date_added date NO 0000-00-00
现在我想计算一下:在(DATE(date_added) > CURDATE() - INTERVAL 30 DAY) 的时间范围内,每个用户有多少个帖子以及他们的总点赞数。我按月和周计算。
我可以直接在查询中执行此操作吗?或者我必须使用 foreach 来计算每个用户,将其写入stats 表,然后在需要时从stats SELECT?
非常感谢任何帮助。谢谢你:)
更新
我需要列出所有用户,无论他们的帖子数是多少。
【问题讨论】: