SQL查询订单平均审核时长
今天在写一个sql,需求是算一个订单在执行状态中的各个节点的时长
比如在订单中,状态0为开始接单,状态3为已经审核,那么现在需要计算每个客服的平均审核时长
像图中所示:这个id为2770的客服,下了两张订单,并且已经完成审核,一张订单的审核时间为 :
TIMESTAMPDIFF( SECOND, os.created_date , os.created_date )= 57秒
另一张的单据审核的时长为16分钟左右,那么这个客服的平均审核时长应该为
SUM(所有单据的审核时间)/ COUNT(order_id)
就是这个单据的平均审核时长
那个sql应该要怎么写才能得到每个客服的审核单据总量与客服审核的时间总和呢?
如果这样写:
因为是查询的是客服的审核时长,所以按照客服的id进行分组,但是会产生一个问题,这个查询虽然将所有的审核都查询,并且这个客服的所有审核时间都进行了相加,但是
相对应的订单的审核时长呢?
所以还要根据订单进行一次分组,将不同的订单之间分来
将sql改为:
这样加了一层分组以后就将数据按照订单id与人员id进行了再一次分组,求出每次的审核时长