mysql – SQL – 无法正确计算SUM
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql – SQL – 无法正确计算SUM,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1192字,纯文字阅读大概需要2分钟。
内容图文
我一直在尝试这个SQL语句.
我有一个销售数据库,我需要做的就是:
SELECT
SUM(orders.total) as total, orders.transaction_date as date,
orders.id as orderid, orders.employee_id as empl
from orders GROUP by orders.employee_id
这个查询很完美,它给了我所需要的一切.但是,我需要添加到目前为止已销售的数量,以便与此查询相对应:
SELECT order_id, SUM(quantity)
FROM order_items
Group By order_id
哪个也好.两者都很完美,但我需要将它们放入一个sql语句中.
当我尝试
SELECT
SUM(order_items.quantity),
SUM(orders.total) as total,
orders.transaction_date as date,
orders.id as orderid,
orders.employee_id as empl
from
orders, order_items
where
order_items.order_id = orders.id
GROUP by
orders.employee_id
除了总数之外,一切似乎都是正确的.我不知道为什么会这样.
这是DB
命令:
id | employee_id | transaction_date | total
ORDER_ITEMS:
order_id | quantity
解决方法:
在将两个表连接在一起之前,需要单独聚合这两个表:
select sum(oi.quantity), sum(o.total) as total,
o.employee_id as empl
from orders o join
(select oi.order_id, sum(oi.quantity) as quantity
from order_items oi
group by oi.order_id
) oi
on oi.order_id = o.id
group by o.employee_id;
在select中包含交易日期和订单ID没有意义.您按员工ID进行聚合,因此这些列可能(可能是)多个值.
内容总结
以上是互联网集市为您收集整理的mysql – SQL – 无法正确计算SUM全部内容,希望文章能够帮你解决mysql – SQL – 无法正确计算SUM所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。