Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在SQL中布尔字段为true时计算持续时间_Mysql_Sql_Timestamp_Duration - Fatal编程技术网

Mysql 在SQL中布尔字段为true时计算持续时间

Mysql 在SQL中布尔字段为true时计算持续时间,mysql,sql,timestamp,duration,Mysql,Sql,Timestamp,Duration,我在MySQL数据库中有下表,它记录了系统打开或关闭的时间。目前每十分钟采集一次数据,但将来可能会发生变化 timestamp on 2014-12-29 07:59:59 1 2014-12-29 08:09:59 1 2014-12-29 08:20:00 1 2014-12-29 08:29:58 0 2014-12-29 08:39:59 1 2014-12-29 08:49:59 1 2

我在MySQL数据库中有下表,它记录了系统打开或关闭的时间。目前每十分钟采集一次数据,但将来可能会发生变化

timestamp              on                   
2014-12-29 07:59:59    1
2014-12-29 08:09:59    1
2014-12-29 08:20:00    1
2014-12-29 08:29:58    0
2014-12-29 08:39:59    1
2014-12-29 08:49:59    1
2014-12-29 08:59:58    0
2014-12-29 09:09:59    0
2014-12-29 09:19:58    0
2014-12-29 09:29:59    0
2014-12-29 09:39:58    1
2014-12-29 09:49:59    0
我目前正在用Python对pandas进行一些处理,以计算系统运行的时间。我通过获取状态更改的点,然后计算这些时间之间的持续时间来实现这一点

在SQL中有这样做的方法吗?如果可能的话,我宁愿在数据库中进行,特别是因为我可以在一段时间内每天都这样做,而无需将所有数据传输到客户端。在pandas中,我使用shift函数获取下一行,看看它是否不同,但在MySQL中我看不到这样做的方法

有什么想法吗


可以在

上使用SQL设置包含上述示例数据的表格。请使用所需结果编辑您的问题。请不要在保留关键字后命名列。。。您关于的专栏显然与SQL命令JOIN-On、On-DUPLICATE-KEY-UPDATE等有冲突。这当然不是一个很好的回答,也不是一个技术性的回答,但是如果您实际上每10分钟查看一次状态,您可以将On的计数乘以10分钟。