首页  >  问答  >  正文

寻找状态转换平均时间的方法:使用Eloquent或DB查询

我有一个名为state_histories的表格,内容如下:

实体类型 entity_id 状态 创建时间
发票 1 2020-04-16 06:24:50
发票 1 索赔 2020-04-16 07:24:50
发票 2 2020-04-16 07:34:50
发票 2 按住 2020-04-16 07:44:50
发票 1 付费 2020-04-16 08:24:50
发票 2 索赔 2020-04-16 09:34:50

我想使用Eloquent或DB查询来找出从NEW状态到CLAIM状态的发票的平均运输时间。

对于上述输出,应为90分钟。

P粉348088995P粉348088995179 天前367

全部回复(1)我来回复

  • P粉766520991

    P粉7665209912024-04-05 13:24:41

    在回答之前,最好考虑一种不需要为发票的新状态创建新行的方式,也许可以添加一些列来引用状态变更的时间,这样说来 你可以获取created_at并分配给Dayname或Carbon 在Carbon中,使用createFromFormat进行分配,这样你可以为新建和索赔做到这一点 然后有一个叫做diffInSeconds的方法,你可以调用一分钟来获取一个实体的差异。对所有实体都这样做,最后将它们的数量相加得到不同实体的总数

    回复
    0
  • 取消回复