[英]Convert julian date to date in sql server
我想将朱利安日期转换为日期格式。 下面,请找到一个示例来创建我的错误。 我所有的日期都有需要转换的 5 位数字。
create table #test (dateR int)
insert into #test (dateR)
values (39596),(39596),(39595),(39595),(39593),(39592),(39592),(39589),(38104),(38104),(37957)
SELECT * from #test
select *
, dateadd (year, dateR/1000 - 1900, dateR %1000 - 1) as Rd
from #test
得到错误:
消息 517,级别 16,状态 1,第 2 行 向“日期时间”列添加值导致溢出。
还试过:
SELECT DATEADD(dd, CONVERT(int, RIGHT(dateR,3)) - 1, CONVERT(datetime,SUBSTRING(dateR,1,2)+'0101', 212))
这将返回:
Msg 8116 level 16 state 1 line 1 nullArgument 数据类型int对于子串函数的参数无效
您可以将INT值转换为DATETIME 。
例如:
SELECT CAST(39596 AS DATETIME); -- Returns 2008-05-30 00:00:00.000
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.