我想知道是否有人可以帮忙。
我有以下代码,它基本上将 10 条记录插入到一个表中。从这张表中,我试图显示针对卖家的销售总额。我尝试过使用 LAG 功能,但这似乎不起作用。
这是代码。
CREATE TABLE Sales
(
OrderId Int NOT NULL,
Seller varchar(10) NULL,
Amount money NULL
)
INSERT INTO Sales VALUES
(1, 'Alex', 10.00),
(2, 'Sarah', 15.00),
(3, 'Tracy', 10.25),
(4, 'Pete', 10.25),
(5, 'Tracy', 11.00),
(6, 'Tracy', 10.25),
(7, 'Alex', 10.25),
(8, 'Jane', 10.25),
(9, 'Alex', 20.55)
SELECT Seller, Amount, LAG(Amount,1) OVER (PARTITION BY Seller ORDER BY Seller) AS RunningTotal FROM Sales
基本上在这个例子中,我希望得到以下输出
Seller|Amount|Running Total
Alex|10.00|10.00
Alex|1.25|20.25
Alex|20.55|40.90
Jane|10.25|10.25
Pete|10.25|10.25
Sarah|15.00|15.00
Tracy|10.25|10.25
Tracy|11.00|21.25
Tracy|10.25|31.50
希望有人可以帮助并提前感谢。戴夫