假设我正在从Java程序执行一个SQL查询,以便从最近10天内出现的时间戳表中获取时间戳(存储为毫秒)。strftime('%s', 'now', '-10 days') * 1000)");// First calculate in the number of milliseconds in Java
最近发现了一些让我对SQLServer的DATEDIFF函数感到震惊的事情(当然,这是我没有阅读文档的错);它计算两个指定日期之间的间隔边界数。这意味着我可以问它01 Jan 23:57和01 Jan 23:59之间的天数,它会返回0,但是如果我问01 Jan 23:59和02 Jan 00:01之间的天数,它会告诉我它们之间有1天。时间跨度是一样的:2分钟,但是突然一个相差0天,一个相差1天
来自Oracle和.Net的背景,我可以看到我犯了一个严重的错误,假设TSQL中的DATEDIFF是等价的(例如
Date increase(int numberOfDays) day += numberOfDays; }
我的问题是,在给定日期的情况下,增加天数最简单的方法是什么?例如,我创建了一个新日期(4,20,2016).increase( 30 )的实例;这将增加给定日期的添加时间30天。我想那是在5月19日的某个时候。如果少于月中最大的一天,上面的方法应该有效。就像我说的那样,到那个日期的365天是2017年4月20日。只要有个