[英]How to get sum of specific column at specific row range in SQL Server?
这是我的桌子:
Id Name Price Session
----------------------------------------
1 abcd 1000 07.00 AM
1 abcd 1000 07.00 AM
5 mnop NULL 12.00 AM
5 mnop NULL 12.00 AM
5 mnop 1000 12.00 AM
我希望这个结果:
Id Name Price Session
--------------------------------------
1 abcd 2000 07.00 AM
5 mnop 1000 12.00 AM
如何汇总特定行范围内的列Price
?
在查询中包括group by
子句。 在group by子句中也列出了所有未使用聚合函数的斜列。
Select id ,name ,session ,sum (price)
From table
Group by id, name, session
没有group by
子句的其他方法是SUM()
.. over
SELECT DISTINCT
Id, Name,
SUM(Price) OVER(PARTITION BY ID, Name, Session) [Price],
[Session]
FROM <table>;
结果:
Id Name Price Session
--------------------------------------
1 abcd 2000 07.00 AM
5 mnop 1000 12.00 AM
我认为您可以尝试使用价格的总和来尝试此操作,并以GROUP BY完成。
GROUP BY的Microsoft文档: https : //docs.microsoft.com/zh-cn/sql/t-sql/queries/select-group-by-transact-sql
还有一个简短的例子:
SELECT Id, Name, Session, SUM(Price) AS Price
FROM Table
GROUP BY Id, Name, Session
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.