excel如何将Julian日期转换为日历日期?

时间:2013-08-22 15:08:46

标签: sql-server sql-server-2008 excel excel-2003

我的Julian日期为41348,Excel将此Julian日期转换为3/15/2013。您知道Excel用于计算日历日期的逻辑吗?我需要相同的逻辑将Julian日期转换为SQL Server中的日历日期。

2 个答案:

答案 0 :(得分:4)

41348不是朱利安约会。 Excel需要使用公式将朱利安日期转换为正确的日期。 183349是朱利安约会的一个例子。 41348只是01/01/1900之后经过的天数。

如果我没记错的话,您可以将这些天数添加到01/01/1900,以便在SQL Server中获得所需的结果。

编辑:是的,使用DATEADD。添加01/01/1900

UPDATE Table
SET NewDate = DATEADD(Days, RawDate-2, '01/01/1900')

您需要从RawDate中删除1,因为1对应01/01/1900而另一个1显然我不知道在哪里,但是正在调查。

在我的SQL Server2008R2上,显然它认为1900是非闰年。需要额外的1才能删除!

答案 1 :(得分:1)

我希望41348朱利安的约会不是“3/15/2013”​​

前两位是年份 并且接下来的3位代表日期348意味着12月14日。

我在Sql中用下面的表达式做了同样的事。

选择DATEADD(天,CAST(右('41348',3)AS int) - 1,CONVERT(datetime,LEFT('41348',2)+'0101',112))