获得两个日期差,差的形式为:XX天XX小时XX分XX秒

本文介绍了一种使用Java计算两个日期之间的时间差的方法,包括天数、小时数和分钟数。通过实例演示了如何利用SimpleDateFormat解析特定格式的日期字符串,并计算它们之间的差值。
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try

{

Date d1 = df.parse("2004-03-26 13:31:40");

Date d2 = df.parse("2004-01-02 11:30:24");
long diff = d1.getTime() - d2.getTime();//这样得到的差值是微秒级别
long days = diff / (1000 * 60 * 60 * 24);

long hours = (diff-days*(1000 * 60 * 60 * 24))/(1000* 60 * 60);
long minutes = (diff-days*(1000 * 60 * 60 * 24)-hours*(1000* 60 * 60))/(1000* 60);
System.out.println(""+days+"天"+hours+"小时"+minutes+"分");

}
catch (Exception e)
{
}
在SQL中,我们可以使用DATEDIFF函数计算任意两个日期之间的值,其返回值为两个日期之间的时间差,单位为小时钟或。 但是,这个函数只能计算数或数,不能直接计算小时钟。所以,我们需要进行一些简单的计算,将数转换为小时,再将小时转换为钟和。 对于求时间差的问题,我们可以使用以下简单的步骤: 1.计算两个日期之间的数 我们可以使用DATEDIFF函数来计算两个日期之间的数。例如,我们可以使用以下查询语句来计算两个日期之间的数: SELECT DATEDIFF(day, '2020-01-01', '2020-01-10'); 这将返回一个整数,即日期2020年1月10日和2020年1月1日之间的数。 2.将数转换为小时数 将数乘以24,并将其结果添加到查询中,以计算小时数。例如,我们可以使用以下查询语句来计算两个日期之间的小时数: SELECT DATEDIFF(hour, '2020-01-01', '2020-01-10') + DATEDIFF(day, '2020-01-01', '2020-01-10') * 24; 在这个例子中,我们首先计算数,并将其乘以24,以得到总小时数。然后我们使用DATEDIFF函数计算两个日期之间的小时数,并将其与数乘以24的结果相加,以得到最终的小时数。 3.将小时数转换为钟和 对于计算钟和的问题,我们可以通过使用DATEDIFF函数将小时数转换为钟和。例如,我们可以使用以下查询语句来计算两个日期之间的钟数: SELECT DATEDIFF(minute, '2020-01-01', '2020-01-10') + DATEDIFF(hour, '2020-01-01', '2020-01-10') * 60; 在这个例子中,我们首先使用DATEDIFF函数计算两个日期之间的小时数。然后,我们将其乘以60,以得到总的钟数。最后,我们将钟数与小时数相加,得到最终的钟数。 对于计算数的问题,我们可以使用相同的方法,只需要将钟数乘以60即可。 综上所述,我们可以使用DATEDIFF函数以及一些简单的计算,来计算任意两个日期之间的时间差,从而得到我们需要的答案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值