mysql如何获得总反馈?

时间:2019-08-10 09:09:52

标签: mysql sql laravel

我正在为使用Laravel和MySQL的产品制作反馈星级系统, 如何让MySQL计算所有比率并获得5星的平均值?

因此,通过laravel,我将仅使用get()来获取平均值。

//sample data:

id | rate
1     4
2     2

//expected output:

3

2 个答案:

答案 0 :(得分:1)

为了更准确地回答,应该知道表的结构。 您可以将所需的行分组,然后除以数字。像这样的东西:

SELECT SUM(rate)/COUNT(1) FROM table GROUP BY 1

或具有AVG功能

SELECT AVG(rate) AS avgRate
FROM table
GROUP BY xyz;

请参阅https://dev.mysql.com/doc/refman/8.0/en/group-by-functions.html#function_avg

DB::table('your_table')
                ->avg('star');

答案 1 :(得分:0)

您可以这样做,

$rateAvg = Model::avg('rate');

查看此链接以了解更多

How to get average of column values in laravel

Aggregates in laravel