2012-11-16 129 views
1

一直在研究整天,至今沒有找到可以接受的答案,我對代碼的實驗沒有任何結果。SQL選擇查詢日期轉換

我有一個特定的2列「StartDate」和「LastBackupDate」的數據庫似乎是存儲他們的日期信息作爲Julian日期(例如40953.6017873071)。我需要將其轉換爲標準格里曆日期(MM-DD-YYYY或DD-MM-YYYY)。

我在當前的「Select * FROM xxxxxx WHERE blah blah」中取回此表中的所有結果。

如果我將數據導出到工作表,但是當我使用Convert獲取數據時,我無法用Excel轉換這些日期,但我無法獲取轉換日期。

這是網頁的SQL查詢的一部分。我不能發佈出來的網頁代碼,但我可以發佈SQL查詢:

SELECT * FROM ExpandedCustomerView WHERE regloginid = @0 AND (Status='A' OR Status='H')" 

我一直是這樣的實驗:

SELECT CONVERT(varchar(36),[STARTDATE],101) 
[StartDate] 
,[LastBackupDate] 
FROM [CNTD_Accounts].[dbo].[ExpandedCustomerView] 

,以此來得到這個返回適當。我試過101,110和其他格式,看看我們能否得到正確的結果。到目前爲止,我沒有任何工作。我認爲這應該相當簡單。從數

回答

0

角色直接DATETIME ..

select cast(40953.6017873071 as datetime) 
-- 
2012-02-16 14:26:34.423 

例如

cast([StartDate] as datetime) 

如果數據是在一個varchar字段輸入一個數字,投了兩次

cast(cast([StartDate] as float) as datetime) 
+0

我給這是一個嘗試和更新儘快。謝謝! –

+0

那麼這是非常有益的謝謝你。演員陣容肯定會改變顯示的日期和時間。但是,我有一個新的問題,我打破了附加到它的網頁。 Web網格出現問題,列名未使用SQL中的「cast」語法定義。我猜我必須找出一種方法來以不同的方式定義startdate列。然而,這絕對符合要求。非常感謝!!!! –