Asp.net SQL Server中所有财政年度(4月至3月)的财政年度报表

Asp.net SQL Server中所有财政年度(4月至3月)的财政年度报表,asp.net,sql-server,tsql,stored-procedures,pivot-table,Asp.net,Sql Server,Tsql,Stored Procedures,Pivot Table,在哪里可以使用T-sql动态生成过去10年的财务年度报告,如下所示: Months |2007-2008 |2008-2009| 2009-2010 |2010-2011 | Average ------------------------------------------------------------------- April May June

在哪里可以使用T-sql动态生成过去10年的财务年度报告,如下所示:

Months |2007-2008 |2008-2009|   2009-2010 |2010-2011 | Average
-------------------------------------------------------------------
April                       
May                                 
June                                    
July                                    
August                                  
September                                   
October                                 
November                                    
December                                    
January                                 
February                                    
March                                   
Average     

我不确定[DATETIME]代表什么,我假设它是一个月或年的指标,如果不是,您需要更改where语句以合并年和月

试着这样做:

SELECT '2007-2008' AS FISCALYEAR, SUM(EXPENSE) AS EXPENSE
FROM YOURTABLE
WHERE [DATETIME] BETWEEN '4/1/2007' AND '3/31/2008'
UNION ALL
SELECT '2008-2009' AS FISCALYEAR, SUM(EXPENSE) AS EXPENSE
FROM YOURTABLE
WHERE [DATETIME] BETWEEN '4/1/2008' AND '3/31/2009'
UNION ALL
SELECT '2009-2010' AS FISCALYEAR, SUM(EXPENSE) AS EXPENSE
FROM YOURTABLE
WHERE [DATETIME] BETWEEN '4/1/2009' AND '3/31/2010'
UNION ALL
SELECT '2010-2011' AS FISCALYEAR, SUM(EXPENSE) AS EXPENSE
FROM YOURTABLE
WHERE [DATETIME] BETWEEN '4/1/2010' AND '3/31/2011'

这将使你接近每个财政年度的支出。要获得平均值,只需执行相同的操作并将其聚合。

我们需要您的表结构和示例数据为我的SQL表列所在的任何helpID、年、月、费用、日期时间、月份