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