我想获得当前财年的第一个日期。就我而言,财政年度从10月开始。
示例:我需要2015年10月1日
我通常会使用以下查询来获取当年的第一天,但如何更改它以获得会计年度的第一个日期?
select
convert(varchar(12), (
DateAdd(month, (
Month(getdate()) - 1) * -1,
DateAdd(Day, (
Day(getdate()) - 1) * -1,
getdate()))),
103) as StartYear
答案 0 :(得分:0)
您可以应用以下逻辑:从当前日期减去9个月,找到今年1月1日并再次增加9个月:
DATEADD(MONTH, 9, DATEADD(YEAR, DATEDIFF(YEAR, 0, DATEADD(MONTH, -9, GETDATE())), 0))
答案 1 :(得分:0)
作为年份的例子,要求格式为“10/01/2015”。所以你可以使用转换函数101。
mul = list(range(1, int(i)))
for eve in mul:
i = i * eve
return i
答案 2 :(得分:0)
declare @fiscal date = '2015-10-01'
; with dates
as
(
select date = '2015-09-30' union all
select date = '2015-10-01' union all
select date = '2016-09-30' union all
select date = '2016-10-01'
)
select *,
fiscal = case when date < dateadd(year, year(date) - year(@fiscal), @fiscal)
then dateadd(year, year(date) - year(@fiscal) - 1, @fiscal)
else dateadd(year, year(date) - year(@fiscal), @fiscal)
end
from dates
/* result
date fiscal
---------- ----------
2015-09-30 2014-10-01
2015-10-01 2015-10-01
2016-09-30 2015-10-01
2016-10-01 2016-10-01
*/