MySQL-Using SUM WITH JOIN [英] MYSQL - Using SUM with JOIN

查看:52
本文介绍了MySQL-Using SUM WITH JOIN的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好的,我有4张表。

Ausers表,列idname

包含列idnameownergroups表。

Aitems表,列groupcontent

Acontent表,列idnameduration

每个用户可以有多个组。每个组中可以有几个项目。每项代表一条内容。

我希望能够列出所有组以及该组中每条内容的所有持续时间总和

我一直在尝试的是这样的:

select groups.id,groups.name,users.name,sum(content.duration) as duration from groups
join users on groups.owner=users.id
join items on items.group=groups.id
join content on content.id=items.content

遗憾的是,这只给出了一个结果,即所有组中每条内容的所有持续时间的总和-如下所示:

"g001", "Group 1", "Me", "400"

我期望的内容是这样的:

"g001", "Group 1", "Me", "160"
"g002", "Group 2", "You", "160"
"g003", "Group 3", "Them", "80"

推荐答案

试试

   select groups.id,groups.name,users.name,sum(content.duration) as duration from groups
   join users on groups.owner=users.id
   join items on items.group=groups.id
   join content on content.id=items.content
   group by groups.name

这篇关于MySQL-Using SUM WITH JOIN的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆