繁体   English   中英

SQL上一个会计年度

[英]SQL Previous Fiscal Year

我有一个视图,显示的是迄今为止的会计年度数据。 我需要另一个显示上一个会计年度的视图。 我有一个表,其中包含会计年度的开始和结束日期。 即7/1 / YYYY至6/30 / YYYY。

我建议您根据应用程序的会计年度使用用户定义的功能。

CREATE FUNCTION dbo.fnc_FiscalYear(
    @AsOf           DATETIME
)
RETURNS INT
AS
BEGIN

    DECLARE @Answer     INT

    -- You define what you want here (July being your changeover month)
    IF ( MONTH(@AsOf) < 7 )
        SET @Answer = YEAR(@AsOf) - 1
    ELSE
        SET @Answer = YEAR(@AsOf)


    RETURN @Answer

END

GO

像这样使用它:

SELECT dbo.fnc_FiscalYear('7/1/2016')


SELECT dbo.fnc_FiscalYear('6/30/2015')

我认为此解决方案将起作用。

在DATEADD(Month,6,DATEADD(yy,DATEDIFF(yy,1,GETDATE())-2,0))和DATEADD(month,6,DATEADD(dd,-1,DATEADD(yy,DATEDIFF(yy,0) ,GETDATE())-1,0)))

暂无
暂无

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

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