我正在试图弄清楚我遇到的一个潜在数据差异问题。我一直在使用 Data Explorer 插件执行一些查询,以获取我们发帖最频繁用户的统计数据。我使用的一个查询如下:
select u.username, us.post_count
from users u
join user_stats us
on u.id = us.user_id
order by us.post_count desc
该查询返回了某个用户大约 100 篇帖子。随后,我决定稍微修改一下查询方式:
select u.username, count(distinct p.id)
from users u
join posts p
on u.id = p.user_id
group by u.username
order by count(distinct p.id) desc
针对该用户,这个查询返回了 135 篇帖子。这似乎是正确的数字,因为它实际上是在统计 posts 表中的每一篇帖子,而不是依赖 user_stats 表中的 post_count 字段。
因此,我正在尝试理解为什么会出现这种差异。这是一个非管理员、非版主用户的查询,因此不会有很多以帖子形式出现的管理员操作。对于这种情况,大家有什么想法吗?