反转整数转换的日期时间

时间:2018-01-11 14:18:13

标签: sql-server tsql

在T-SQL中的功能

.

返回类似CONVERT(INT, GETDATE()) 的整数。

有没有办法扭转此功能并将43110值回滚到原始43110格式?

2 个答案:

答案 0 :(得分:2)

您可以使用

CONVERT(DATETIME, 43110)

获取日期时间 - 但是你的前任

CONVERT(INT, GETDATE())

已经四舍五入 - 应该是43109.625

SELECT CONVERT(DATETIME, 43109.625)

最好的方法是使用

SELECT (CONVERT(FLOAT, GETDATE()))

用于检索十进制表示。

答案 1 :(得分:1)

这将仅返回日期部分:

CONVERT(DATETIME, 43110)

如果您还需要时间部分,请使用FLOAT代替INTEGER

CONVERT(FLOAT, GETDATE()) -- results in a number like 43109.6431769676

并返回:

CONVERT(DATETIME, 43109.6431769676)