Определение среднего времени для создания и обновления в - PHP и MYSQL - PullRequest
0 голосов
/ 08 мая 2020

У меня есть таблица, в которой created_at и updated_at. Создается в момент, когда клиент приобрел заказ, и поле updated_at обновляется, когда заказ утверждается, как показано ниже.

Я хочу получить среднее время, затраченное администратором на утверждение элементов в таблице ниже. Это мой sql

SELECT AVG( TIMEDIFF(  `created_at` ,  `updated_at` ) ) AS time_average
FROM table

Мои результаты: 8025356.2742000870. На правильном ли я пути и как преобразовать среднее время в часы, например 2hrs 15mins

Таблица

Item        created_at                   updated_at

Iphone     2020-01-01 00::00::00         2020-02-04 10::20::20

Samsung    2020-04-01 08::40::00         2020-03-03 10::20::20

1 Ответ

0 голосов
/ 08 мая 2020

Да, вы можете найти ответ с помощью strtotime () $time = date('H :i', strtotime($res)); Это то, что я пробовал,

$connect = new mysqli($localhost, $username, $password, $dbname);

$sql = "SELECT AVG( TIMEDIFF(  `created_at` ,  `updated_at` ) ) AS time_average FROM table";
$result = $connect->query($sql);
$row  = $result->fetch_assoc();
$res = $row["time_average"];
//echo "avg".$res."<br/>";

$time = date('H :i', strtotime($res));
echo "time avarage : ".$time;

Затем вы можете использовать метод explode для описания, как показано ниже,

$timeArray =explode(":", $time);
echo $timeArray[0]."hrs ".$timeArray[1]."mins"; 

Работает нормально, думаю, вам поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...