首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >提取按管理员分组的组的成员和管理员的分数总和

提取按管理员分组的组的成员和管理员的分数总和
EN

Stack Overflow用户
提问于 2014-09-13 23:22:00
回答 1查看 34关注 0票数 0

我有两个表:分数和用户:

代码语言:javascript
运行
复制
user:
--------------
id | name | parent
--------------
1  | jack |0
--------------
2  | John |1
--------------
3  | Jim  |1
--------------
4  | Sara |0
--------------
5  | Ann  |4
--------------
6  | Suzi |4



score:
------------------------
id | title_id | user_id | score
------------------------
1  | 2        |0        |5
------------------------
2  | 4        |1        |4
------------------------
3  | 5        |1        |4
------------------------   

家长是一个组的管理员,我想提取每个组的总分。现在我有了这个:

代码语言:javascript
运行
复制
select sum(score) from score left join user on user.id=score.user_id where title_id=2 and parent!=0 group by parent_id

但是这个返回值只是群成员的和,而不是群的和。有没有更好的查询?

EN

回答 1

Stack Overflow用户

发布于 2014-09-13 23:27:07

我认为下面的查询做了您想要的。它使用case来区分组长和成员,因此包括所有成员(包括组长):

代码语言:javascript
运行
复制
select (case when u.parent_id = 0 then u.id else u.parent_id end) as grp, sum(s.score)
from user u left join
     score s
     on u.id = s.user_id and s.title_id = 2 
group by (case when u.parent_id = 0 then u.id else u.parent_id end);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25824629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档