我正在尝试使用dateadd函数(Sybase ASE)加上1毫秒的日期,但是在此方面没有运气:
select dateadd(ms, 1, getdate()) cur_date,
dateadd(ms, 1, getdate()) add_ms,
datediff(ms,dateadd(ms, 1, getdate()), getdate()) diff_ms
当前日期: 2018-06-21 12:54:20.360
add_ms: 2018-06-21 12:54:20.360
diff_ms: 0
能帮您找到解决方案吗?
答案 0 :(得分:0)
日期时间类型的精度为1/300秒。如果要获取下一个值,请在该值前增加3或4毫秒。
另一种方法是强制转换为 bigdatetime 类型(精度为1微秒= 1/1000000 s),然后加上1ms。 试试:
select dateadd(ms, 1, convert(bigdatetime, getdate())) cur_date,
dateadd(ms, 1, convert(bigdatetime, getdate())) add_ms,
datediff(ms,dateadd(ms, 1, convert(bigdatetime, getdate())),
convert(bigdatetime, getdate())) diff_ms
diff ms:-1