MySQL sum()在不同的分组依据上
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MySQL sum()在不同的分组依据上,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1020字,纯文字阅读大概需要2分钟。
内容图文
好的,我对两个表进行了查询.我需要拿两笔款项.我按分组进行,所以sum()可以正常工作.
SELECT sum(a.x), sum(b.y) FROM a,b GROUP BY a.n where a.n=b.m
到目前为止,这很好,但是问题是我需要对第二个和(sum(b.y))进行分组,而不是对第一个和(sum(a.x))进行分组.
真正的查询有些复杂,但这是我的主要问题.
这是我实际上尝试选择的总和(stock.amount)-if(sold.amount IS NULL,0,sum(sold.amount))
如何在一个查询中解决这个问题?
解决方法:
因为您没有写下表格,所以我会做出一个疯狂的猜测,并假设表格如下:
库存:id,item_id,数量
已售:id,item_id,金额
然后我再次假设您需要stock_in_total,sold_total,left_total总数
SELECT
stock_sums.item_id,
stock_sums.st_sum as stock_in_total,
COALESCE(sold_sums.so_sum,0) as sold_total,
(stock_sums.st_sum - COALESCE(sold_sums.so_sum,0)) as left_total
FROM (
SELECT stock.item_id as item_id, SUM(stock.amount) as st_sum
FROM stock
GROUP BY item_id
) as stock_sums
LEFT JOIN (
SELECT sold.item_id as item_id, SUM(sold.amount) as so_sum
FROM sold
GROUP by item_id
) as sold_sums ON stock_sums.item_id = sold_sums.item_id
我希望这会有所帮助.
内容总结
以上是互联网集市为您收集整理的MySQL sum()在不同的分组依据上全部内容,希望文章能够帮你解决MySQL sum()在不同的分组依据上所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。