MsSQL将字符串转换为DateTime

Dmi*_*iuk 1 sql-server datetime rounding

为什么在MsSQL中,几毫秒会被舍入到下一个?例如:

SELECT CONVERT(datetime, '2006-04-25 15:50:59.996', 120)
Run Code Online (Sandbox Code Playgroud)

产生

2006-04-25 15:50:59.997
Run Code Online (Sandbox Code Playgroud)

And*_*yev 6

在MS SQL Server中,datetime值具有一定的准确性.

它们四舍五入到.000,.003或.007秒的增量.

如果您需要更高的精度(并且至少运行SQL Server 2008) - 使用datetime2类型,它的准确度为100纳秒.