从时间戳

时间:2015-05-21 19:12:33

标签: php mysql timestamp

几个月前,我遇到了一个问题(详情请见calculating total time using timestamp)关于从只有 1 的mysql表中找到持续时间的时间或 0 值表示门的打开 关闭 状态。表格如下:

1)表t

id   binary   timestamp

2888    1     2015-05-21 18:01:58
2888    1     2015-05-21 18:01:47
2889    1     2015-05-21 17:58:06
2888    0     2015-05-21 18:01:40
2889    1     2015-05-21 17:57:39
2888    1     2015-05-21 18:01:34
2888    0     2015-05-21 18:01:26
2889    1     2015-05-21 17:58:25
2889    0     2015-05-21 17:57:22
2889    1     2015-05-21 17:58:19
2889    1     2015-05-21 17:57:22
2889    0     2015-05-21 18:03:57
2889    1     2015-05-21 17:58:13
1889    1     2015-05-21 18:03:49
2889    1     2015-05-21 18:03:42
2889    1     2015-05-21 18:03:35

感谢fancyPantsgRaWEty帮助我解决这个问题。

好吧,我使用代码计算时间持续时间是:

2)SQL QUERY

    select
    id, `binary`,
    sec_to_time(count(distinct `timestamp`))
    from
    t
    where 
    `timestamp` between concat(curdate(), ' 00:00:00') 
    and
    concat(curdate(), ' 23:59:59')
    group by id, `binary`

所以,我得到的输出是这样的:

3)输出

id     binary      duration

1889    1          00:00:01
2888    0          00:00:02
2888    1          00:00:03
2889    0          00:00:02
2889    1          00:00:08
  
    

(好吧,即使有人忽略了所有文字而只是通过1)-2)-3)希望能得到清晰的图片)

  

只要我只需要计算持续时间,一切都很好,现在当我被要求显示starting_time(印章) ending_time时出现问题邮票)旁边持续时间。因为我打算制作一个需要这样一张桌子的时间表:

4)输出(我正在寻找)

  id    binary  start_time            end_time              duration

1889    1       2015-05-21 18:03:49   2015-05-21 18:03:49   00:00:01
2889    1       2015-05-21 18:03:35   2015-05-21 18:03:42   00:00:08

我的意思是,如果你看 1)TABLE t ,门1889从2015-05-21 18:03:492015-05-21 18:03:49开启1秒。门2889从2015-05-21 18:03:352015-05-21 18:03:42打开了8秒。我的代码只能在输出 3)时生成此持续时间(8秒),但我正在寻找它的开放时间,有两个额外的列,在这种情况下将是2015-05-21 18:03:35 start_time 2015-05-21 18:03:42 end_time ,输出 4)

现在我的问题:

  
      
  1. 使用 start_time end_time 获取输出的代码(第4行)应该是什么?
  2.   
  3. 是否可以将输出保存为表格(例如列名为 id 二进制 ,< mysql数据库中的strong> start_time end_time 持续时间 ) ?
  4.         
        

    如果是,是否有人可以为此提供链接或示例代码?

      

感谢先生:)

0 个答案:

没有答案