次の内容を含む state_histories という名前のテーブルがあります:
###州### ###請求書### 1 ###新しい### ###請求書### ###請求### ###請求書### ###新しい### ###請求書### 長押し ###請求書### ###支払い### ###請求書### ###請求### Eloquent または DB クエリを使用して、請求書の NEW ステータスから CLAIM ステータスまでの平均配送時間を調べたいと考えています。 上記の出力の場合、90 分になるはずです。エンティティタイプ | エンティティ_id | 作成時間 | |
---|---|---|---|
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 | ||
回答する前に、請求書の新しいステータスに対して新しい行を作成する必要がない方法を検討したほうがよいでしょう。いわば、ステータス変更の時刻を参照するためにいくつかの列を追加するかもしれません。 created_at を取得して Dayname または Carbon に割り当てることができます Carbon では、割り当てに createFromFormat を使用して、新規および要求に対してそれを実行できるようにします。 次に、エンティティの差分を取得するために呼び出すことができる diffInSeconds というメソッドがあります。これをすべてのエンティティに対して実行し、最後にそれらの数値を加算して、個別のエンティティの合計数を取得します。