SQL-从MySQL数据(带有时间戳和状态消息的行集)中查找所有停机时间和停机
技术问答
205 人阅读
|
0 人回复
|
2023-09-12
|
我已经开始使用循环了PHP脚本监视ISP停机时间,脚本每5秒自动检查一次连接,并存储结果MySQL数据库中。脚本检查它是否可以访问几个远程网站并记录结果。数据库中总是存储检查时间和状态。
; n& D# ^) O" ~' n# @( f3 J表的结构如下:- E3 o# a: m) W2 s
id (auto increment)time (time stamp)status (varchar)现在是我的问题。
. N! t+ V- n. Z) p) q3 u我有数据,但我不知道如何使用它来达到我想要的结果。基本上,我想找出连接断开的所有时间段和时间。
# W$ U4 Y" l5 O; o例如,如果我们有10行包含以下数据( D3 ^* p7 y* j% F* B
0 | 2012-07-24 22:23:00 | up1 | 2012-07-24 22:23:05 | up2 | 2012-07-24 22:23:10 | down3 | 2012-07-24 22:23:16 | down4 | 2012-07-24 22:23:21 | up5 | 2012-07-24 22:23:26 | down6 | 2012-07-24 22:23:32 | down7 | 2012-07-24 22:23:37 | up8 | 2012-07-24 22:23:42 | up9 | 2012-07-24 22:23:47 | up查询应返回句点(从22:23:10到22:23:21,从22:23:26到22:23:37)。因此,查询应始终找到第一次断开和第一次断开之间的时间。& T2 t' N4 |9 y) M6 L% X, i/ f
我认为一个可行的方法是找到所有断开或上升的行,但是如何找到这些行呢?还有比这更好的解决方案吗?
1 q. a1 d8 _4 R% R我真的不知道查询应该是什么样子,所以我会感激帮助。4 D; F6 y$ G) i. j% M- o
谢谢,谢谢拉西0 t& j% b) s7 ^2 X! E9 l+ b N# h
/ H4 V$ Z4 E9 W2 I% n4 c 解决方案: |
|
|
|
|
|