针对不同型号使用T-SQL的每日不同销售
这是我从数据库中的表中输入的数据: 我想获得以下信息作为输出: 如果您观察输出,我需要获得从第1天到截止日期的不同型号序列号计数。 对于ex:对于第1天:已售出的计数(不同序列号) 第2天:销售时的计数(与第1天不同的序列号) 我是用累计销售额来计算的,但是因为一些序列号在不同的日期有多个销售额,所以我得到了一个错误的计数。针对不同型号使用T-SQL的每日不同销售,sql,sql-server,tsql,count,distinct,Sql,Sql Server,Tsql,Count,Distinct,这是我从数据库中的表中输入的数据: 我想获得以下信息作为输出: 如果您观察输出,我需要获得从第1天到截止日期的不同型号序列号计数。 对于ex:对于第1天:已售出的计数(不同序列号) 第2天:销售时的计数(与第1天不同的序列号) 我是用累计销售额来计算的,但是因为一些序列号在不同的日期有多个销售额,所以我得到了一个错误的计数。 有谁能帮我查询一下这个请求的T-SQL吗?您可以通过两个聚合级别来完成这项工作: select model, sale_date, sum(count(*))
有谁能帮我查询一下这个请求的T-SQL吗?您可以通过两个聚合级别来完成这项工作:
select model, sale_date,
sum(count(*)) over(partition by model order by sale_date) sale_qty
from (
select model, serial_number, min(sale_date) sale_date
from mytable
group by model, serial_number
) t
group by model, sale_date
order by model, sale_date
使用这种技术,每个序列号在其首次出现日期仅计数一次。A>>小