1
我需要帮忙查询工作,我无法概念化了。通常,我希望获得计算机升级到新操作系统所需的时间,减去由故障引起的任何时间段。表需要帮忙的经过时间的流逝查询工作
例子是:
timestamp - status
2016-07-19 14:25:59.000 Conversion In Progress
2016-07-20 07:38:20.000 Failed - 04
2016-07-26 07:15:59.000 Conversion In Progress
2016-07-26 08:50:39.000 Conversion Successful
你可以看到有来自当转换开始并没有很大的差距,当它再次拉开帷幕。我想避免为报告目的增加这段时间。
我查询我现在用的就是这个:
SELECT ROUND(AVG((b.ts - a.ts)/60), 0)
FROM
(
SELECT mach_name, timestamp, UNIX_TIMESTAMP(timestamp)as ts FROM w10_migration_log where status = 'Conversion In Progress'
)a INNER JOIN
(
SELECT mach_name, timestamp, UNIX_TIMESTAMP(timestamp)as ts FROM w10_migration_log where status = 'Conversion Successful'
) b on a.mach_name = b.mach_name
日志中的大多数条目不会有问题要处理。这很重要吗?
任何帮助是极大的赞赏
感谢您的回复。您的帖子很有意义,我没有创建表格,但我可能会看到关于更改它。无论如何,如果日志中有超过2个条目?我们有一些机器失败5,6次以上。这似乎不适用于这种情况。 – spas2k
@ spas2k什么不行?我建议每次尝试一行,所以2或6或20应该完全相同。 – rlanvin