我有一個日期/時間字段存儲爲數據庫中的BIGINT。我需要檢索數據庫中的日期大於當前日期30天以後的記錄。我嘗試了以下,它的工作原理。SQL Server比較日期在bigint與當前日期
有更好/更簡單的方法來實現它嗎?
select
datediff(day, CONVERT(DATE, DATEADD(s, dateInBigint/1000, '19700101'), 102),
CONVERT(date, getdate(),102));
例如爲:
select
datediff(day, CONVERT(DATE, DATEADD(s, 1348986702000/1000, '19700101'), 102),
CONVERT(date, getdate(), 102));
你爲什麼要將'date'字段存儲爲'bigint'? – Taryn
你的例子中的值的含義是什麼? –
通常我們使用'DATE'或'DATETIME'數據類型來存儲日期。我必須同意@bluefeet - 爲什麼你將它們存儲爲'BIGINT'?你認爲你通過這樣做獲得了什麼?你已經有一些想法,你失去了什麼... –