繁体   English   中英

如何在数据库的列中添加所有值并获取其平均值,然后计算其行数

[英]How to add all value in a column in database and get its average then count its num of rows

我有一个查询代码,它从数据库评级中选择评级,然后使用变量total来添加所有查询,然后我想做的是获取数据库中的行数,以便将行数除以总值得到它的平均值

$total=0;
    <?php
$st='SELECT rated FROM rating;';
$t=mysqli_stmt_init($conn);
mysqli_stmt_prepare($t,$st);
mysqli_stmt_execute($t);
$res=mysqli_stmt_get_result($t);
while($rop=mysqli_fetch_assoc($res)){

$total+=$rop['rated'];
echo $total;
$count=count($rop['rated']);
}
echo $total;
$total=0;

然后我得到一个错误参数,该参数必须是在$ count中实现可计数的数组或对象

count()函数用于计算数组中元素的数量。

您应该在循环中每次递增变量。

$count = 0;
while($rop=mysqli_fetch_assoc($res)){
    $total+=$rop['rated'];
    echo $total;
    $count++;
}

但是没有必要在PHP中执行此操作,您可以在MySQL中执行此操作:

SELECT SUM(rated) AS total, AVG(rated) AS avg, COUNT(*) AS count
FROM rating
count($rop['rated'])

没有意义。 您尝试计算一个值。

您应该看看mysql avg函数: https : //www.w3schools.com/sql/sql_count_avg_sum.asp

select avg(rated) from rating;

应该为你做这份工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM