SELECT (DAYS(?) - DAYS(FROM)) * 86400 + (MIDNIGHT_SECONDS(?) -
MIDNIGHT_SECONDS(FROM)) AS FROM_DIFF,
(DAYS(?) - DAYS(TO)) * 86400 + (MIDNIGHT_SECONDS(?) -
MIDNIGHT_SECONDS(TO)) AS TO_DIFF
FROM CALENDAR.EVENTS WHERE ID = ?
ps.setTimestamp(1, new Timestamp(...));
ps.setTimestamp(2, new Timestamp(...));
ps.setTimestamp(3, new Timestamp(...));
ps.setTimestamp(4, new Timestamp(...));
ps.setInt(5, ...);
SELECT
(DAYS('2015-05-05 00:00:00.0') - DAYS(FROM)) * 86400 + (MIDNIGHT_SECONDS('2015-05-05 00:00:00.0') - MIDNIGHT_SECONDS(FROM)) AS FROM_DIFF,
(DAYS('2015-05-05 00:00:00.0') - DAYS(TO)) * 86400 + (MIDNIGHT_SECONDS('2015-05-05 00:00:00.0') - MIDNIGHT_SECONDS(TO)) AS TO_DIFF
FROM CALENDAR.EVENTS WHERE ID = 1055;
谢谢你。
附注。计算时间差的公式取自本文:DB2Basics:Fun with Dates and Times
days()
函数有几个重载版本,接受具有不同数据类型的参数:date
、timestamp
和varchar
。使用非类型化参数标记(days(?)
)时,查询编译器无法确定在查询中使用哪个版本的函数。
您可以为编译显式指定参数数据类型:days(CAST(?AS TIMESTAMP))
。或者,如果您使用的是最新的DB2 for LUW版本(9.7和更高版本),则可以设置DB2注册表变量:
db2set DB2_DEFERRED_PREPARE_SEMANTICS=YES
告诉编译器它应该将PREPARE调用推迟到查询执行时间,此时参数数据类型已经知道。
问题内容: 我在一个MySQL数据库表上工作,该表的列包含我对其他主机执行ping操作时的时间戳记(例如2014-09-16 09:08:05)。我的问题是如何在几分钟内计算出针对特定主机的第一次ping和最后一次ping之间的差异?另外,如何为上述差异的开始和结束指定不同的时间戳(而不是第一次和最后一次ping)。这是表格的示例: 我希望我已经对自己的解释足够清楚。 问题答案: 您可以使用本机的
问题内容: 我需要计算两个日期之间经过的时间。 这里要注意的是,我需要像YouTube一样用视频评论时间戳来显示它。也就是说,仅以最大的方式显示它。 例如, 如果时间是50秒前,应该说是50秒前。 如果时间超过一分钟,则应说一分钟前/十分钟前,等等。 如果时差是1小时30分钟,则应显示:一个小时前。 如果时间是一个半星期而不是一个星期前应该说的话。 如果时间超过一个月,则应说一个月前/两个月前,等
问题内容: 如何获得几天内两个时间戳之间的差异?我应该为此使用datetime列吗? 我将专栏切换为日期时间。简单的减法似乎并没有在几天内给我带来结果。 我不认为是几秒钟,因为当我将一天中的秒数除以(86,400)时,我不会得到一个明智的答案: 问题答案: 如果您乐于忽略列中的时间部分,则DATEDIFF()会为您提供以天为单位的时差。
问题内容: 我有一个要求,我必须以小时为单位获得两个时间戳记的时差,然后才求出小时数的平均值。 我正在使用下面的查询来查找两个时间戳的差异,但它没有给出确切的结果,而是给出了近似的结果。我们还有其他解决方案吗?我的两个时间戳为(LAST_MODIFIED_DATETIME-2016-11-30 15:39:01.131 CREATE_DATETIME-2016-07-01 17:25:52.375
本文向大家介绍Android进阶之使用时间戳计算时间差,包括了Android进阶之使用时间戳计算时间差的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android使用时间戳计算时间差的具体代码,供大家参考,具体内容如下 因当前项目需要计算时间差,进行数据处理,所以在Csdn上找了一下,之后修修补补是可以用的,建议大家如果用到项目中的话,可能需要把老的时间戳或者时间format存储在
我将startdate和endDate作为用户的输入,将DateTime作为Flutter(Dart)中的datatype。这些字段将以时间戳格式存储在Firestore中。现在我们需要在客户端显示endDate和startDate的差异,这可以是一个实时计时器,格式为“13小时45分钟”,然后在一些分钟后,它应该是“13小时42分钟”。