我需要一段sql代码,它显示特定日期的年份部分,但新年应该从11月1日开始。
例如,以下两个将为我带来2014年:select DATEPART(year, '2014-10-01')
select DATEPART(year, '2014-11-01')
我需要第二个回到2015年,因为公司的新年将于11月开始。
我还需要这不仅适用于指定年份的2年,也适用于任何日期。有人告诉我这就像减去2个月一样容易等等谢谢
答案 0 :(得分:1)
假设MS SQL Server ......
SELECT DATEPART(YEAR, DATEADD(MONTH,2,'2014-11-01'))
答案 1 :(得分:1)
加上两个月,让年份成为其中的一部分。
select datepart(year, dateadd(MONTH,2,'2014-10-01')), -- 2014
datepart(year, dateadd(MONTH,2,'2014-11-01')) -- 2015
答案 2 :(得分:0)
假设PostgreSQL
SELECT
date_part('year', ('2014-10-01') :: DATE + INTERVAL '2 months'), -- 2014
date_part('year', ('2014-11-01') :: DATE + INTERVAL '2 months'); -- 2015;