2013-04-25 78 views
0

我在SQL Server工作2008 R2如何VARCHAR轉換爲日期

我需要一個varchar(50)字段轉換在視圖中的日期格式。

我有一個使用下面的創建領域DELIVERED_DATE一個觀點:

convert(varchar(50),[delvd_dt],110) as [delivered_date] 

格式化的領域是這樣的:2012-03-11 16:24:42.0000000

我需要的結果是一個日期,以便我可以檢查範圍內的日期。我更願意在視圖內進行操作,以便我可以使用SSRS爲報告創建範圍。

+0

可能重複(http://stackoverflow.com/questions/1509977/convert-varchar-into-datetime-in-sql-server ) – 2013-04-25 13:56:13

+1

那麼,你爲什麼不把FIX表格和第一個存儲在正確的數據類型? – 2013-04-25 14:15:00

回答

3

你試過cast()?下面返回我的正確日期:

select CAST('2012-03-11 16:24:42.0000000' as DATE) 
0

也許你可以簡單地截斷米利斯和使用CONVERT

SELECT Convert(datetime, LEFT('2012-03-11 16:24:42.0000000', 19), 102) AS [Date] 

Demo

這個工程即使在MS SQL-Server 2005中

CAST and CONVERT (Transact-SQL)

-3

試試這個link網站顯示了幾種格式選項。

實施例:[轉換到的varchar日期時間在SQL Server]

SELECT CONVERT(VARCHAR(10), GETDATE(), 105) 
+0

走錯了方向。他已經有一個角色,想要得到一個日期時間。 – 2013-04-25 14:03:54

+0

引用的混淆部分是單詞「格式」。他說他已經有了一個varchar(50),他想要某種日期。將「格式」替換爲「類型」,它更有意義。 – 2013-04-25 14:07:50

相關問題