MySQL常用分组统计汇总

1. 指定多个字段进行汇总统计,取分组中的最大最小值

select case_id, sort, min(time) as startTime, max(time) as endTime from result_detail 
where result_id=45 and type = 'step' group by case_id, sort order by sort asc;

指定测试结果表中根据 case_id 和 sort 字段进行分组,取同一分组中的执行最小时间作为该条用例的开始执行时间,取同一分组中的执行最大时间作为该条用例的结束执行时间。
因为一个测试集可能有多条相同用例,用 sort 作为区分,case_id 和 sort 两个字段一起可以唯一确定执行的是哪一条用例,因此这里需要指定两个字段。
执行结果如下图所示:


获取测试用例的开始和结束时间

2. 指定多个字段进行汇总统计,取分组中的某个字段的最大值

# 查询结果详情中,每条执行用例的最终状态
select case_id, sort, max(status) as status from result_detail where result_id = 45
and type='status'
group by case_id, sort;

根据 case_id 和 sort 字段进行分组,每个分组中取最大状态值作为用例的最终状态。
因为一条用例可能有多个设备执行,每个设备返回的状态值可能不同,这里取最大值作为整条用例的最终状态值。
执行结果如下图所示:


获取测试用例的最终状态
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容