由于种种原因,我将日期时间值作为sql float类型(从DateTime.OADate转换而来)存储在数据库中,但是在某些情况下,从数据库中获取可读的日期/时间列是很好的。我发现,我可以执行该语句将日期时间类型的双精度投入时间为2天?
SELECT CAST (timerecorded_utc as DATETIME) FROM tablename
,它会给我,我要找的日期时间字符串,但它似乎正好2天关闭。我知道我可以只修改语句(因为在表示为双人床1天= 1.0倍)是
SELECT CAST (timerecorded_utc-2.0 as DATETIME) FROM tablename
但我想知道这是否是一致的,在我看来,有一些理由的差异我错过了。
将数据保存到数据库时可能会丢失一些精度吗? – 2011-05-13 16:57:34
我不认为它是精密相关的,因为时间降到毫秒是正确的。日期在小数点之前计算,时间来自小数点后的值。如果它与精度有关,那么时间会是错误的(至少我认为) – 2011-05-13 16:59:44
@Mthethe,日期到浮点转换是什么样的? – 2011-05-13 17:04:12