2012-08-10 42 views
2

我有,我選擇客戶的購買行爲,它會在ColumnA顯示購買日期(隨着時間),在這種格式的表格:T-SQL日期顯示

2012-08-06 10:06:42.223 
YYYY-MM-DD HH:MM:SS 

我想顯示只有日期,所以我增加了一個LEFT函數像這樣:

LEFT(ColumnA, 11) 

這將擺脫的時間,但現在顯示的日期,我會得到:

Aug 06 2012 

我想以數字格式來顯示它但MM/DD/YYYY所以它看起來像:

08/06/2012 
MM/DD/YYYY 

任何想法如何,我可以在T-SQL做到這一點?

+0

HTTP://www.sql- server-helper.com/tips/date-formats.aspx – Limey 2012-08-10 18:30:05

+0

您正在使用哪種SQL Server版本? – 2012-08-10 18:33:21

回答

3

你只需要將其轉換:

SELECT convert(char(10), getdate(), 101) 

或從表中:

SELECT convert(char(10), yourDate, 101) 
FROM yourTable 

這是一個方便的網站與轉換:

How to format datetime & date in Sql Server 2005

或者,如果你只是想yourDate值沒有時間,你可以隨時使用導致2012-08-06 00:00:00.000

declare @yourDate datetime 
set @yourdate = '2012-08-06 10:06:42.223' 

select DateAdd(day, DateDiff(day, 0, @yourdate), 0) 

或者從yourTable:

select DateAdd(day, DateDiff(day, 0, yourDateField), 0) 
from yourTable 
+0

我可以用變量動態地做到這一點,所以我不必用set @yourdate ='2012-08-06'來指定具體的日期嗎? – steve 2012-08-10 18:44:19

+0

@FredStevaans查看我的編輯,您只需將您的日期字段替換爲您的列。我只是以此爲例 – Taryn 2012-08-10 18:45:55

1

試試這個:

SELECT CONVERT(VARCHAR(10), ColumnA, 101) 
FROM MyTable 
+0

非常感謝。這很好! – steve 2012-08-10 18:55:38