我有一个电子商务应用程序。所有交付的订单都有一列“updated_at”。我可以用这个列计算平均交货时间总交货订单吗?
我已计算所有订单和列updated_at。我需要做什么,计算平均时间?
我的代码:
$avgDelivery = Order::where('status', '=', '8')->avg('updated_at');
$allDelivery = Carbon::parse($avgDelivery)->formatLocalized('%d'); //get avg days
但这会让我20180317368025.6000
并且错误:
DateTime::__counstruct(): Failed to parse time string... Unexpected character
如何才能正常交付平均时间?
答案 0 :(得分:0)
计算datetime
列的平均updated_at
$avgDelivery = Order::where('status', '=', '8')
->selectRaw('FROM_UNIXTIME(AVG(UNIX_TIMESTAMP(updated_at))) as avgTime');
->first();
$allDelivery = Carbon::createFromTimestamp($avgDelivery->avgTime)
->formatLocalized('%d'); //get avg days