奇怪的行为Datediff Java Datediff SQL

Tobias Huebner:

当我尝试在Java中以秒为单位计算两个日期之间的差异时,我得到的输出与sql中的输出不同。

SQL:

select DATEDIFF(second, 
                 convert(datetime, '2014-01-07 11:00:27', 120), 
                 convert(datetime, '2018-07-09 00:00:00', 120))

=> 142001973

    SimpleDateFormat NORM_DATE_TO_STRING = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    Date reference = NORM_DATE_TO_STRING.parse("2014-01-07 11:00:27");

    Date we =  NORM_DATE_TO_STRING.parse("2018-07-09 00:00:00");

    long diff = (we.getTime()-reference.getTime())/1000;

=> 141998373

它关闭了一个小时,我不知道为什么。

提前致谢

Zag:

Java版本考虑了夏令时,而SQL版本则没有。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章