2011-11-08 40 views
-2

當我運行select *語句時,我得到兩種不同的日期格式。如何在sql語句中格式化日期

我該如何格式化所有的日子,特別是調用日期列。

+3

什麼是兩種格式,數據庫中有兩種類型的列是什麼? – Derek

+1

如果您不打算提供(如有必要)格式列列表,則您將依賴基礎模式來定義返回的內容。 –

+0

你在哪裏查看輸出?用C#顯示後,還是僅僅在管理工作室? – Chris

回答

1

不改變你的日期基本數據類型,你不能從SQL,操作記錄集的格式不明確做類型轉換/轉換你的選擇:

SELECT CAST(SomeDate1 as DATETIME), CAST(SomeDate2 as DATETIME) FROM User 

或者用CONVERT

SELECT CONVERT(VARCHAR, SomeDate1, 101), CONVERT(VARCHAR, SomeDate2, 101) FROM User 

假設101是你想要的格式(見MSDN爲各種格式)。

+0

我建議格式121爲最可靠/通用的'CONVERT(varchar(23),someDate,121)'給出'2012-01-25 15:09:23.003'。這種合理的排序方式可以作爲文本,並可以可靠地轉換回日期時間,而不管區域設置如何。 – Ben