繁体   English   中英

SQL会计年度报表

[英]SQL Fiscal Year in report

我有一个SQL查询,在一列中显示年份,在另一列中显示月份。 我可以将报告显示为当前年度,但是我需要以财务形式显示,例如我们的财政年度是从oct-oct开始的,那么如何在sql中执行此操作? 我当前的查询如下:

SELECT TOP (15) dbo.timelinedayres_v1_0.fiscalyear, 
                dbo.timelinedayres_v1_0.fiscalmonth, 
                SUM(dbo.factqht_v2.baanstandarcost)                 AS stdcost, 
                CAST(dbo.timelinedayres_v1_0.fiscalmonth AS VARCHAR) + ' - ' + 
                CAST(dbo.timelinedayres_v1_0.fiscalyear AS VARCHAR) AS CONCAT 
FROM   dbo.timelinedayres_v1_0 
       INNER JOIN dbo.factqht_v2 
         ON dbo.timelinedayres_v1_0.epoch = dbo.factqht_v2.qhtwfclosedtimekey 
       INNER JOIN dbo.dimqht_v2 
         ON dbo.factqht_v2.qhtid = dbo.dimqht_v2.qhtid 
       LEFT OUTER JOIN dbo.dimqhtmaterials_v2 
         ON dbo.factqht_v2.materialid = dbo.dimqhtmaterials_v2.materialid 
       LEFT OUTER JOIN dbo.dimqhtdispositions_v2 
         ON dbo.factqht_v2.dispositionid = 
            dbo.dimqhtdispositions_v2.dispositionid 
GROUP  BY dbo.dimqhtdispositions_v2.TYPE, 
          dbo.timelinedayres_v1_0.fiscalyear, 
          dbo.timelinedayres_v1_0.fiscalmonth, 
          dbo.dimqht_v2.toplevelassembly_majoritemgroupdesc, 
          CAST(dbo.timelinedayres_v1_0.fiscalmonth AS VARCHAR) + ' - ' + 
          CAST(dbo.timelinedayres_v1_0.fiscalyear AS VARCHAR) 
HAVING ( dbo.dimqhtdispositions_v2.TYPE = N'Scrap' ) 
       AND ( dbo.dimqht_v2.toplevelassembly_majoritemgroupdesc = 
             'Torquer Motors' ) 
ORDER  BY dbo.timelinedayres_v1_0.fiscalmonth  

这是我的方法:

SELECT YEAR(DATEADD(month, 2 + DATEDIFF(month, 0, GETDATE()), 0))

由于我们在11月,它将返回2012,如果日期是10月,则将返回2011。您可以调整偏移量。

如果您只是一个月/一年而来,则可以执行以下操作:

declare @month int
declare @year int
set @year = 2011
set @month = 10
    SELECT CASE  
               WHEN @month > 10  
                   THEN @year + 1
               ELSE 
                   @year
           END AS fiscalYear

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM