我有4个表,称为用户,跟踪列表,评论,投票。
我想为每个用户返回跟踪列表的数量,所以我做了这个查询:
SELECT datereg, nickname, count(*)
FROM users JOIN tracklist ON nickname=usersub
GROUP BY nickname
ORDER BY count(*) DESC, nickname ASC
现在,我想返回跟踪列表、评论和投票的数量。所以我写道:
SELECT datereg, nickname, count(*)
FROM users JOIN tracklist ON nickname=usersub JOIN comments ON nickname=usercom JOIN votes ON nickname=uservote
GROUP BY nickname
ORDER BY count(*) DESC, nickname ASC
但我也想返回3个不同的计数(*),1个用于跟踪列表,1个用作评论,1个作为投票。
当然,如果count(*)为0,我希望返回0。因此,该值必须在结果中应用,并且不能被忽略。
如何进行此查询?谢谢你的努力!