我正在为使用Laravel和MySQL的产品制作反馈星级系统, 如何让MySQL计算所有比率并获得5星的平均值?
因此,通过laravel,我将仅使用get()
来获取平均值。
//sample data:
id | rate
1 4
2 2
//expected output:
3
答案 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)