Sql 合并会计年度
下面是我目前计算财政年度的方式Sql 合并会计年度,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,下面是我目前计算财政年度的方式 case when month(TimeOfCall) >= 4 then year(timeofcall) else year(timeofcall) -1 end as Fiscal 我得到的结果是 Fiscal 2013 2014 我希望它看起来像什么 Fiscal 2013/14 2014/15 这可能吗?谢谢您可以尝试使用CONCAT和RIGHT功能 Declare @SampleData as Table ( timeof
case when month(TimeOfCall) >= 4
then year(timeofcall)
else year(timeofcall) -1
end as Fiscal
我得到的结果是
Fiscal
2013
2014
我希望它看起来像什么
Fiscal
2013/14
2014/15
这可能吗?谢谢您可以尝试使用CONCAT和RIGHT功能
Declare @SampleData as Table
(
timeofcall datetime
)
INSERT INTO @SampleData Values ('2014-03-11'), ('2014-04-11')
SELECT
CASE
WHEN month(TimeOfCall) >= 4
THEN CONCAT(year(timeofcall), '/', RIGHT(year(timeofcall) + 1, 2))
ELSE CONCAT(year(timeofcall) -1, '/', RIGHT(year(timeofcall), 2))
END as Fiscal
FROM @SampleData
演示链接:一种不需要案例的方法是: 两个要点: 它使用日期算法得到会计年度-减去3个月。 它使用datename以字符串形式获取年份。
@崔佛,怎么回来的?2-15年的通话时间?为什么不呢?我刚刚为它添加了演示
select (datename(year, dateadd(month, -3, TimeOfCall)) + '/' +
right(datename(year, dateadd(month, 12-3, TimeOfCall)), 2)
) as fiscalyear