要统计的一天=第一天=atc_task_logs_20211117
第二天=atc_task_logs_20211118
一 第一天每个小类型创建数
| 1
 | select task_name,count(*) from atc_task_logs_20211117 where event=1 group by task_name
 | 
二 第一天创建的所有任务的独一标志hashKey
return${第一天创建的hashKey集合}
| 1
 | select hash_key from atc_task_logs_20211117   where event=1 and hash_key is not null
 | 
三 统计当天成功和第二天成功
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 
 | 当天成功
 select task_name,count(*) from atc_task_logs_20211117
 where event=4
 and hash_key in ${第一天创建的hashKey集合}
 group by task_name
 
 第二天成功
 select task_name,count(*) from atc_task_logs_20211118
 where event=4
 and hash_key in ${第一天创建的hashKey集合}
 group by task_name
 
 | 
四 类似第三步 统计当天强制失败和第二天强制失败
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 
 | 当天失败
 select task_name,count(*) from atc_task_logs_20211117
 where event=7
 and hash_key in ${第一天创建的hashKey集合}
 group by task_name
 
 第二天强制失败
 select task_name,count(*) from atc_task_logs_20211118
 where event=7
 and hash_key in ${第一天创建的hashKey集合}
 group by task_name
 
 | 
五 第一天创建的hashKey第二天也出现了 说明最后一次event出现在第二天
return ${结束在第二天的event的id的集合} 
| 12
 3
 4
 
 | select max(id) from atc_task_logs_20211118where
 hash_key in ${第一天创建的hashKey集合}
 group by hash_key
 
 | 
五点五 第一天创建的hashKey第二天也出现了 说明最后一次event出现在第二天
return ${结束在第二天的hashKey集合}
| 12
 3
 4
 
 | select hash_key from atc_task_logs_20211118where
 hash_key in ${第一天创建的hashKey集合}
 group by hash_key
 
 | 
六 统计第一天的(event=5)失败
${第一天创建的hashKey集合} - ${结束在第二天的hashKey集合} = ${结束在第一天的hashKey集合}
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 
 | select max(id) from atc_task_logs_20211117
 where
 hash_key in ${结束在第一天的hashKey集合}
 group by hash_key
 
 
 
 select task_name,count(*) from atc_task_logs_20211117
 where
 event=5
 and id in ${结束在第一天的event的id的集合}
 group by task_name
 
 | 
七 类似地 统计下第二天的(event=5)失败
| 12
 3
 4
 5
 
 | select task_name,count(*) from atc_task_logs_20211118where
 event=5
 and id in ${结束在第二天的event的id的集合}
 group by task_name
 
 | 
 
        
    
    
        
    最后更新时间: