查找一个日期范围和一个时间范围之间的交叉时间

时间:2011-09-02 00:25:04

标签: mysql

我正在寻找一个mysql查询,它将获取开始日期/结束日期和开始时间/结束时间,并计算时间范围与日期范围相交的时间量(以秒为单位)。

例如,

开始日期至结束日期:2011-09-01 18:00:00至2011-09-01 19:00:00

开始时间到结束时间:下午6点到早上8点

在这种情况下,时间应为3600秒。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

我想你的意思是下午6点到晚上7点 反正:

SELECT ABS(UNIX_TIMESTAMP('2011-09-01 18:00:00') - UNIX_TIMESTAMP('2011-09-01 19:00:00'))

SELECT ABS(UNIX_TIMESTAMP(`end_date`) - UNIX_TIMESTAMP(`start_date`))