gpt4 book ai didi

php - 获取两列和几行MYSQL之间的平均时间

转载 作者:行者123 更新时间:2023-11-29 05:54:46 25 4
gpt4 key购买 nike

我有两列,一列包含开始时间戳,一列包含结束时间戳。我想计算所有记录开始和结束之间的平均时间。目前我尝试了以下方法:

$result = $conn->query( $sql );

$averages = array();

$result = $conn->query( $sql ); # Place the result into an array
if ( $result->num_rows > 0 ) {
while ( $row = $result->fetch_assoc() ) {


$sum = 0;

if($EndColumn == ' '){
$time = $row[$StartColumn];

}else{
$time = strtotime($row[$EndColumn]) - strtotime($row[$StartColumn]);

$averages[] = $time;
}

}
$total = array_sum($averages);

$count = count($averages);

$avg = $total/$count;
return round(($total/$count));

这根本无法正常工作,我认为这可以在 sql 字符串本身中完成,但我太笨了,无法弄清楚。无论哪种方式,请帮助!

最佳答案

请试试这个:

   SELECT CAST(AVG(start_date + (IFNULL(end_date,start_date)-start_date)/2) AS DATETIME) AS average_date FROM TableName

如果日期存储为时间戳,则上述查询将给出所有记录开始和结束之间的平均时间。

关于php - 获取两列和几行MYSQL之间的平均时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50700657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com