2013-08-22 192 views
0

我有一個儒略日期41348和Excel將此儒儒日期轉換爲3/15/2013。你知道Excel用來計算日曆日期的邏輯嗎?我需要這個相同的邏輯來將儒略日期轉換爲SQL Server中的日曆日期。excel如何將儒略日期轉換爲日曆日期?

+0

[C Pearson](http://www.cpearson.com/excel/datetime.htm)可能會有興趣。謹防1904年體系。 – pnuts

回答

4

41348不是朱利安日期。 Excel需要使用公式將朱利安日期轉換爲適當的日期。 183349是朱利安日期的一個例子。 41348只是01/01/1900之後的天數。

如果我正確記得,您可以在SQL Server中將這些天數添加到01/01/1900以獲得所需的結果。

編輯:是的,使用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

我希望41348公曆日期不equl爲「2013年3月15日」

的前兩位爲年份 和接下來的3個數字表示日期348指12月14日。

我在Sql中用下面的表達式做了同樣的事情。

選擇DATEADD(日,CAST(RIGHT( '41348',3)爲INT) - 1,CONVERT(日期時間,LEFT( '41348',2)+ '0101',112))