我的表中有第一列日期時間型別的行:
2021-11-01 08:51:56.123 102 296
當我使用下面的選擇命令時,我得到相同的結果(這一行):
select * from cmd where timestamp = convert(datetime, '2021-11-01 08:51:56.122')
select * from cmd where timestamp = convert(datetime, '2021-11-01 08:51:56.123')
select * from cmd where timestamp = convert(datetime, '2021-11-01 08:51:56.124')
我要求只有第二個命令選擇這一行。
怎么做?
SQL Server 是版本 14
uj5u.com熱心網友回復:
DATETIME具有(大約)0.003 秒的精度。這意味著它只能表示每 3千分之一秒,其他所有內容都四舍五入為 0.000、0.003 或 0.007 秒的增量,如下表所示。
User-specified value System stored value
01/01/98 23:59:59.999 1998-01-02 00:00:00.000
01/01/98 23:59:59.995
01/01/98 23:59:59.996
01/01/98 23:59:59.997
01/01/98 23:59:59.998 1998-01-01 23:59:59.997
01/01/98 23:59:59.992
01/01/98 23:59:59.993
01/01/98 23:59:59.994 1998-01-01 23:59:59.993
01/01/98 23:59:59.990
01/01/98 23:59:59.991 1998-01-01 23:59:59.990
您可以使用DATETIME2(3)代替來DATETIME獲得更高的精度。
有關更多詳細資訊,請閱讀https://docs.microsoft.com/en-us/sql/t-sql/data-types/datetime-transact-sql?view=sql-server-ver15
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/346124.html
標籤:sql sql-server 查询语句 约会时间 where子句
上一篇:查詢以求和前“n”條記錄
