【发布时间】:2019-09-12 10:30:11
【问题描述】:
以下是原始表
+--------------+---------------+----------+---------+-----------+
| CustomerName | InvoiceNumber | ItemRate | TaxRate | TaxAmount |
+--------------+---------------+----------+---------+-----------+
| A | 1 | 500 | 4% | 20 |
| B | 2 | 300 | 9% | 27 |
| B | 2 | 100 | 9% | 9 |
| B | 2 | 400 | 4% | 16 |
| C | 3 | 250 | 9% | 22.5 |
| C | 3 | 650 | 4% | 26 |
| D | 4 | 200 | 4% | 8 |
| D | 4 | 100 | 4% | 4 |
+--------------+---------------+----------+---------+-----------+
我想要这样的输出:
+--------------+---------------+--------------+---------+-----------+
| CustomerName | InvoiceNumber | InvoiceTotal | TaxRate | TaxAmount |
+--------------+---------------+--------------+---------+-----------+
| A | 1 | 500 | 4% | 20 |
| B | 2 | 800 | 9% | 36 |
| B | 2 | 800 | 4% | 16 |
| C | 3 | 900 | 9% | 22.5 |
| C | 3 | 900 | 4% | 26 |
| D | 4 | 300 | 4% | 12 |
+--------------+---------------+--------------+---------+-----------+
在进行 Group By 时,我遇到了发票价值总和的问题。 我必须使用“TaxRate”进行分组以组合类似的税收,并且我想在结果中包含新列,显示该特定发票的总计。
发票总计列应该包含整个发票的总和,因为我当前的查询是按税组而不是整个发票求和。
我的查询是:
Select CustomerName, InvoiceNumber, sum(itemrate) as InvoiceTotal, TaxRate, sum(TaxAmount)
from salestable group by customername,invoicenumber, Taxrate
请帮助解决这个问题。
谢谢
【问题讨论】:
-
能否请您提供您的尝试?当我们没有您的 SQL 时,我们很难告诉您哪里出错了。
-
我更新了我的问题,请参阅问题中的“我的查询是:”部分。
标签: sql sql-server