Sql server Sql server中每日销售额的总和

Sql server Sql server中每日销售额的总和,sql-server,Sql Server,我在SQLServer中有一个类似这样的表 userid username sale date 1 azad 50 12/07/2013 2 akash 40 12/07/2013 3 sushil 30 12/07/2013 4 pankaj 20 12/07/2013 5 akash 40 12/07/2013 6 sushil 30 12/07/2013 9

我在SQLServer中有一个类似这样的表

userid username sale date 
 1       azad    50  12/07/2013 
 2       akash   40  12/07/2013
 3       sushil  30  12/07/2013
 4       pankaj  20  12/07/2013
 5       akash   40  12/07/2013
 6       sushil  30  12/07/2013
 9       pankaj  20  12/07/2013
ClosingBalance

140
现在我想要所有用户的销售日期之和,但是从上次销售开始,所有用户都需要这样的输出

userid username sale date 
 1       azad    50  12/07/2013 
 2       akash   40  12/07/2013
 3       sushil  30  12/07/2013
 4       pankaj  20  12/07/2013
 5       akash   40  12/07/2013
 6       sushil  30  12/07/2013
 9       pankaj  20  12/07/2013
ClosingBalance

140
此结果基于所有四个用户的最后一个条目

$sum_sale= mysql_query('SELECT sum(sale) FROM `TABLE` AND '2011-12-09' BETWEEN startdate AND enddate;');
$sum_sales_total = mysql_fetch_array($sum_sales);
这会在路上帮助你

WITH T AS
(
SELECT *,
       ROW_NUMBER() OVER (PARTITION BY username ORDER BY date DESC, id DESC) AS RN
FROM  Balances
)
SELECT SUM(sale)
FROM T
WHERE RN=1

您能提供一个示例输出吗?由于只有日期,您如何定义最后一个条目?如果在同一天有两个销售,会发生什么情况?@Nithesh检查我想要的结果。例如,这意味着我需要每个用户最后一个条目的数据@NitheshWhere是140来自哪里?如果在同一天有两个条目,会发生什么情况?@Nithesh-那么在没有平局断路器的情况下,它将使用其中任何一个。示例架构没有合适的连接断路器。大概用户名,日期是唯一的。我想他想要最新的条目,那么[date]也必须包含时间。在这种情况下,这将很好。是的,你是对的@Nithesh我需要从所有users@AzadChouhan-那么用户名在给定日期是否可以有多个条目?如果可以的话,你需要有一些其他的专栏来区分最新的一个。e、 g.按日期描述、时间描述或存储日期时间,而不仅仅是日期。