我正在寻找一个mysql查询,它将获取开始日期/结束日期和开始时间/结束时间,并计算时间范围与日期范围相交的时间量(以秒为单位)。
例如,
开始日期至结束日期:2011-09-01 18:00:00至2011-09-01 19:00:00
开始时间到结束时间:下午6点到早上8点
在这种情况下,时间应为3600秒。
答案 0 :(得分:0)
MySQL的: Datediff http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_datediff
MSSQL: Datediff http://msdn.microsoft.com/en-us/library/ms189794.aspx
甲骨文: Datediff http://download.oracle.com/docs/cd/E10530_01/doc/epm.931/html_esb_techref/maxl/dml/funcs/datediff.htm
答案 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`))