2016-08-03 168 views
0

做一個錯誤,幾個月前我給自己買了一個情況,在那裏我找到了以下問題的解決方法:獲得從int(年月日)日期

我保存日期爲整在一個共同的格式在我的SQL Server數據庫(YYYYMMDD)內。我想讓我的select語句給我一個格式的整數,看起來像一個日期(或者甚至是一個真正的日期類型)給用戶,所以我可以直接使用接收到的數據表作爲我的DataGridView的數據源。

  • 我不想用客戶方格式
  • 讓我們把表myTable和整數/日期列myIntDate
  • myIntDate可以NULL
  • 樣品myIntDate-value:20160803爲2016年8月
  • 的第3
+2

標記使用的dbms。 (當涉及日期/時間時,許多dbms產品遠遠不符合ANSI SQL標準。) – jarlh

+2

您是否搜索了任何內容?這很容易在網上我很確定。 – dfundako

+0

對不起,忘了把它放進去!我使用TSQL(微軟)@dfundako我有,但我很難找到用於搜索的好關鍵字。 – Luke

回答

10
Select cast(cast(20160729 as varchar(10)) as date) 

返回 2016-07-29

+3

不需要將其轉換爲'VARCHAR(10)','VARCHAR(8)'將會做 – Lamak

+0

這似乎很容易。如果你是對的,我已經完成了編碼工作!看看它是如何處理NULL值 – Luke

+0

@luke它只會返回一個NULL值。如果輸入爲空。如果您需要一個默認日期而不是null,則將其包含在isnull中。 –