这个问题在这里已经有答案了:
sql向mysql结果集添加摘要行(4个答案)
两年前关门了。
是否可以合计两列,但仍然显示所有结果?目前,如果我对select语句中的一列求和(例如sum(sales\u amount)),它只显示一行结果
SALES_ID EMPLOYEE_ID PRODUCT_ID SALES_AMOUNT QUANTITY DATE
1 123148 4578947 80 1 01/01/2018
2 123148 5124578 80 1 01/01/2018
我想保留上面显示的两个结果,但是在sales\u amount下创建了一个额外的行,显示总共160个,数量为2。
3条答案
按热度按时间s71maibg1#
选择sales\u id、employee\u id、product\u id、sales\u amount、quantity、date、(sales\u amount*quantity)作为total from(表名)
如果使用此查询,则金额将乘以每行的数量并显示在新列中
eqfvzcg82#
在这种情况下最简单的方法可能是
union all
:如果您的数据是聚合查询的结果,那么
rollup
是合适的。zzlelutf3#
这可以说是糟糕的sql,因为最后一行的语义与其他行不同(行和列在逻辑上应该可以互换。)也就是说,在我写这篇文章时,我看到@gordon linoff刚刚给出了我要给出的答案。尽管如此,我还是认为这样的聚合应该是分开的。