2012-03-14 34 views
3

我一直在試圖找到一個日期格式:DD/MM/YYYY HH:MM。SQL日期格式:DD/MM/YYYY HH:SS

我使用的轉換(VARCHAR,rc.CreatedDateTime,???)。 131並不是我所需要的。

我似乎能夠找到非常多的非常接近,但不是這個特殊的一個,我失去的東西昭然若揭或有另一種功能,我可以使用?

+1

HH:SS?你不在乎幾分鐘?你爲什麼要使用區域格式?所以你可以肯定美國和其他觀衆會完全困惑?爲什麼不使用像'yyyy-mm-dd'這樣明確的輸出格式? – 2012-03-14 21:07:57

+0

好趕,hh:mm – 2012-03-14 21:17:05

+0

這是一個企業的私人報告,所以它是區域性的,因爲它... – 2012-03-14 21:17:49

回答

4

您可以使用此功能,只需更換getdate()與你的領域:

select convert(char(10), getdate(), 103) + ' ' 
    + convert(char(8), getdate(), 108) 

它給你的結果:如果你只想小時和秒鐘,然後

14/03/2012 17:05:47 

select convert(char(10), getdate(), 103) + ' ' 
    + Left(convert(char(8), getdate(), 108), 2) + ':' 
    + Right(convert(char(8), getdate(), 108), 2) 

下面是日期/時間轉換一個有用的鏈接:

http://anubhavg.wordpress.com/2009/06/11/how-to-format-datetime-date-in-sql-server-2005/

基於您的評論,它應該是dd/mm/yyyy hh:mm那麼查詢是:

select convert(char(10), getdate(), 103) + ' ' 
    + Left(convert(char(8), getdate(), 108), 5) 

或不LEFT()

select convert(varchar(10), getdate(), 103) + ' ' 
    + convert(char(5), getdate(), 108) 
+0

感謝您的鏈接! – 2012-03-14 21:19:32

+0

@ dann.dev沒問題,鏈接非常方便,以保持書籤。我用它所有的時間。 – Taryn 2012-03-14 21:20:10

+0

已被收藏! – 2012-03-14 21:21:37

3

假設你需要DD/MM/YYYY HH:MM不DD/MM/YYYY HH:SS

SELECT convert (varchar(10), rc.CreatedDateTime, 103) + ' ' + 
     convert(varchar(5), rc.CreatedDateTime, 108) 
+0

爲什麼varchar?長度總是會被固定的。 – 2012-03-14 21:10:48

3
SELECT CONVERT(CHAR(10), rc.CreatedDateTime, 103) + ' ' 
    + CONVERT(CHAR(5), rc.CreatedDateTime, 108) 
FROM dbo.[table_name];