嘿,我在计算群组成员数量时遇到问题。我现在的查询为给定用户所属的每个组返回一行。但我希望成员(member)的数量也能出现。我使用的三个表如下所示:
这是我正在处理的查询: 查看编辑!
如果我省略了代码的 COUNT 部分,我会收到我期望的 2 个组。但是当我添加 COUNT 时,它只返回一个成员 = 2 的组。所以看起来它很重要,但我不确定这是正确的答案。
提前致谢!
最佳答案
假设您正在计算用户 1 所属的每个组中的参与者总数...
SELECT gu1.group_id_foreign
, COUNT(*) ttl
FROM group_participants gu1
JOIN group_participants gu2
ON gu2.group_id_foreign = gu1.group_id_foreign
WHERE gu1.user_id_foreign = 1
GROUP
BY gu1.group_id_foreign;
http://sqlfiddle.com/#!2/821ad/1
顺便说一句,group_participants 表中的 _id 列似乎没有任何作用,而且,在我看来,您的命名约定是疯狂的! ;-)
关于android - SQLite 对组中的成员进行计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20193359/