Sql 此数据集最后三个月的总和计数?
我有下面的数据集,上面的日期字段是一个字符串。如何使用此数据集将查询写入过去三个月的合计计数:Sql 此数据集最后三个月的总和计数?,sql,sql-server,tsql,Sql,Sql Server,Tsql,我有下面的数据集,上面的日期字段是一个字符串。如何使用此数据集将查询写入过去三个月的合计计数: 你可能在找这样的东西 SELECT TOP 3 YEAR, MONTH, SUM(Counts) as Total FROM your_table GROUP BY YEAR, MONTH ORDER BY YEAR DESC, MONTH DESC 你可能在找这样的东西 SELECT TOP 3 YEAR, MONTH, SUM(Counts) as Total FROM your_table
你可能在找这样的东西
SELECT TOP 3 YEAR, MONTH, SUM(Counts) as Total
FROM your_table
GROUP BY YEAR, MONTH
ORDER BY YEAR DESC, MONTH DESC
你可能在找这样的东西
SELECT TOP 3 YEAR, MONTH, SUM(Counts) as Total
FROM your_table
GROUP BY YEAR, MONTH
ORDER BY YEAR DESC, MONTH DESC
您可以将字符串日期转换为日期格式
select top 3 * from test order by convert(datetime,'01-'+date,6) desc
上面的查询将为您提供过去三个月的数据。那你就可以算数了
您可以将字符串日期转换为日期格式
select top 3 * from test order by convert(datetime,'01-'+date,6) desc
上面的查询将为您提供过去三个月的数据。那你就可以算数了
根据@Phong answer,您可以通过以下方式获得结果:
select sum(t.summary)
from (
select top 3 sum(counts) summary
from test
group by y, m
order by y desc, m desc
) t
也可以使用ROW_NUMBER函数获得相同的结果:
select sum(t.counts)
from (
select mon, y, counts,
row_number() over(order by y desc, mon desc) RN
from test
) t
where RN <= 3
根据@Phong answer,您可以通过以下方式获得结果:
select sum(t.summary)
from (
select top 3 sum(counts) summary
from test
group by y, m
order by y desc, m desc
) t
也可以使用ROW_NUMBER函数获得相同的结果:
select sum(t.counts)
from (
select mon, y, counts,
row_number() over(order by y desc, mon desc) RN
from test
) t
where RN <= 3
请展示你想要的结果。和您的尝试。请显示您想要的结果。还有你的尝试。