1. 程式人生 > >SqlServer中的SmallDatetime作為條件查詢的截至日期問題!

SqlServer中的SmallDatetime作為條件查詢的截至日期問題!

在資料表中欄位A的型別為SmallDatetime,如果要查詢詞表資料並以A欄位為查詢條件

例:select * from Table_A where A between '2017-04-01 00:00:00' and '2017-04-06 23:59:59'

我們想要的資料是 1號 到 6號的資料,可是查詢出來會把7號的資料也查詢出來。

原因:

因為SmallDatetime型別的時間之儲存到分,秒會預設為0,如果秒不為0時他會 預設增加1分鐘,

所以'2017-04-06 23:59:59' 這個時間會變成'2017-04-07 00:00:00