如何消除查詢中的秒部分。我用DateADD顯示秒部分爲0,但我只是想忽略它。我只想顯示日期小時:分鐘 我已經使用這個查詢並返回我是這樣的Sql Server Datetime2:消除datetime2中的秒部分
SELECT DATEADD(minute, DATEDIFF(minute,0,GETDATE()), 0)
2013-09-30 13:03:00.000
但我只想要2013-09-30 13:03
一部分。
任何人都可以幫助我嗎?
如何消除查詢中的秒部分。我用DateADD顯示秒部分爲0,但我只是想忽略它。我只想顯示日期小時:分鐘 我已經使用這個查詢並返回我是這樣的Sql Server Datetime2:消除datetime2中的秒部分
SELECT DATEADD(minute, DATEDIFF(minute,0,GETDATE()), 0)
2013-09-30 13:03:00.000
但我只想要2013-09-30 13:03
一部分。
任何人都可以幫助我嗎?
如果你正在處理的格式,那麼你有落得什麼是串,而不是一個datetime
值 - datetime
S(或datetime2
S)不有的格式。
所以你需要轉換爲一個字符串。有沒有format完全匹配你問什麼,但如果你做一個轉換,不給CONVERT
足夠的空間,它截斷結果:
SELECT CONVERT(varchar(16),GETDATE(),120)
您不能保留datetime2格式並截斷其中的一部分。
可嘗試以下之一:
SELECT CAST(GETDATE() as date)
SELECT CONVERT(varchar(16),GETDATE(),120)
如果仍然不給你你想要什麼,你可以看到許多其他可能的轉換中this post。
感謝您的答覆。我的查詢運行完美,但實際上我用日期時間格式插入它,我只需要顯示在沒有字符串的格式,所以它給了我例外的代碼。 –
爲此,我必須更改getter setter,以便將使問題..任何方式噸轉換獲得的日期回到日期時間? –
@NosheenJaved - 當你有一個'datetime'(在SQL或者C#中),那麼就像我說的那樣,它們沒有*格式。它們只有一些內部表示(通常是純數字) - 因爲這些類型是固定的和預定義的 - 沒有辦法將類型修改爲'datetime-but-in-this-instance-please-ignore-the-seconds' 。您需要學習將格式化問題與數據存儲問題分開。 –