0
我有一个名为batch_id
的列,其中包含日期列表 - 2016080184即日期2016 08 01 84(84,我相信时间部分)。T-SQL:8月是下年度财政年度的开始,代码动态地更改批次ID
我需要更新batch_id
(varchar(25)
)更改为2017010184
的基础上,另一列voucher_date
(datetime
)= 2016-08-01 00:00:00.000
因此,如果voucher date
是2016年8月2日00:00:00.000,那么batch_id
需要从2016080278
(末尾78在这里并不重要)更改为2017010278
八月是财政年度的第一个月,所以八月将有效地成为一月,九月将成为日等。与去年从8月需求指示次年即今年是2016年,因此batch_id
应与2017年
下一页八月batch_id
开始应注明2018等。
我收到的文件是每天总是落后使事情更加复杂。
坦克你iamdave我会给它一个与案件陈述 – user6667537
对不起,是一个愚蠢的人,但我是这个和编程新。 \t我试图做一个案例陈述,但它的固定。有没有办法动态设置日期?请选择@Kx_Fin_batch_ref = \t \t如果voucher_date> ='2016-08-01'且voucher_date <='2016-08-31'则'KX - '+ convert(nvarchar(8),dateadd(month,5,cast (left([batch_id],8)as date)),112)+ right([batch_id],2) \t \t \t when voucher_date> ='2016-09-01'and voucher_date <='2016-09-30 'then'KX - '+ convert(nvarchar(8),dateadd(month,5,cast(left([batch_id],8)as date)),112)+ right([batch_id],2) – user6667537
请解释不使用代码的动态日期时间规则。 – iamdave