怎么圆二

时间:2016-10-03 07:16:34

标签: sql-server tsql

我有以下格式的datetime列。

如何舍入到秒,在第二点之后(点之后)看起来像miliseconds

Event End DateTime
2016-09-09 10:49:21.9613415
2016-09-09 10:49:21.9783415

我需要:

Event Start DateTime
2016-09-09 10:49:22
2016-09-09 10:49:22

2 个答案:

答案 0 :(得分:3)

尝试

SELECT CAST(datecolumn AS datetime2(0))

enter image description here

答案 1 :(得分:0)

您应该使用datetime2(0)代替datetime。这将允许您存储没有第二个分数的值。

datetime2的范围高于datetime,并允许您指定所需的小数秒精度。虽然datetime仅允许日期为1753-01-01,但datetime2的日期为0001-01-01至9999-12-31

如果你必须使用datetime,你可以转为datetime2(0),例如:

SELECT cast(GETDATE() as datetime2(0))

这将返回不带小数的日期时间值作为DATETIME2值。 所有T-SQL函数都与datetime2一起使用,值直接转换为System.DateTime。如果您 将其用作datetime,则可以将其转换回来:

select cast(cast(getdate() as datetime2(0)) as datetime)