MySQL的总和使用组由多个列
问题描述:
下面的查询:MySQL的总和使用组由多个列
SELECT `brand`,
count(*) * `denomination` AS 'total'
FROM `inventory`
WHERE `owner` = 'owner-one'
AND `currency` = 'GBP'
AND `activated_at` IS NULL
AND `expires_at` >= '2018-06-21'
GROUP BY `owner`,
`brand`,
`currency`,
`denomination`
产地:
| brand | total |
|-----------|-------|
| brand-one | 3000 |
| brand-one | 8000 |
| brand-two | 10000 |
我想什么是进一步按该项目,并总结总计所以输出是这样的:
| brand | total |
|-----------|-------|
| brand-one | 11000 |
| brand-two | 10000 |
数据:
答
你得到3条记录的原因是该组包含了面额。如果我们改变逻辑,以便总结而不是计数(*)*面额,那么我们可以得到两个记录。 (只要你从组中删除面额)...但也许我错过了一些东西。
SELECT `brand`,
Sum(`denomination`) AS 'total'
FROM `inventory`
WHERE `owner` = 'owner-one'
AND `currency` = 'GBP'
AND `activated_at` IS NULL
AND `expires_at` >= '2018-06-21'
GROUP BY `owner`,
`brand`,
`currency`
+0
谢谢你解决它。 – Mike
请问您能否给出例子的来源 – Jens
我想不出来的最长时间是1100来自哪里。那么它在我身上发现我认为你的意思是11000我认为通过分组集合或者总结可能会做你以后的事情。 – xQbert
唉废话,血腥的错字。是的,11000. – Mike