我有一個存儲過程。我宣佈一個表變量CREATION_TIME
:如何將格式從yyyy-mm-dd hh:mm:ss更改爲dd-mm-yyyy hh:mm am/pm
我的創作時間格式現在這個樣子:2017-04-12 13:01:04.730
我要像12/04/2017 13:01 PM
你能幫我格式化?
謝謝。
我有一個存儲過程。我宣佈一個表變量CREATION_TIME
:如何將格式從yyyy-mm-dd hh:mm:ss更改爲dd-mm-yyyy hh:mm am/pm
我的創作時間格式現在這個樣子:2017-04-12 13:01:04.730
我要像12/04/2017 13:01 PM
你能幫我格式化?
謝謝。
您可以使用,如果2012+
Declare @D datetime = '2017-04-12 13:01:04.730'
Select Format(@D,'dd/MM/yyyy hh:mm tt')
返回
12/04/2017 01:01 PM
通知的HH格式()VS HH。 hh將提供12小時,而HH將提供24小時。
似乎很奇怪打造13:01 PM
對於舊版本的SQL Server我的意思是年紀比2012的時候,我們沒有FORMAT()
功能,您可以使用類似的....
SELECT CONVERT(VARCHAR(10), GETDATE(), 103) + ' '
+ LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100) , 7))
Returns: 13/04/2017 3:53PM
我同意SSRS中的建議。
更新您的文本框/表矩陣的格式屬性如下:
DD/MM/YYYY HH:(按要求英國/美國等交換日和月)
感謝您的回答。真的SSRS也更容易改變格式。 我更新了ssrs (Textbox properties - number - custom dd/MM/yyyy h:mm tt)的格式 非常感謝你:) – Aylin
日期毫米TT
不以格式存儲。它們存儲爲日期時間。當你想要一個特定的格式時,最好留給前端應用程序。但是,如果你絕對必須格式化sql的日期,你需要使用FORMAT函數或CONVERT。 –
我使用了這個函數CONVERT(VARCHAR(24),L.CreatedON,103),但它不起作用。我使用了SSRS報告服務器,但我只是更改了小時部分。 – Aylin
爲什麼不能在SSRS中格式化輸出,而不是試圖強制查詢的格式?如果你在查詢過程中遇到這種情況,你將不得不使用FORMAT。 –