Как добавить все значения в столбце в базе данных и получить его среднее значение, а затем подсчитать его количество строк - PullRequest
0 голосов
/ 10 марта 2019

Я получил код запроса, который выбирает рейтинг из рейтинга дБ, затем я добавляю все это, используя переменную сумму, тогда я пытаюсь сделать так: я хочу получить количество строк в дБ, чтобы я мог разделить количество строк на общее значение, чтобы получить его среднее

$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

Ответы [ 2 ]

0 голосов
/ 10 марта 2019
count($rop['rated'])

не имеет смысла. Вы пытаетесь посчитать значение.

Вы должны взглянуть на функцию mysql avg: https://www.w3schools.com/sql/sql_count_avg_sum.asp

select avg(rated) from rating;

должен сделать всю работу за вас

0 голосов
/ 10 марта 2019

Функция 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...