如何使用Eloquent ORM计算多个表中的结果

时间:2016-05-17 06:43:57

标签: mysql laravel eloquent

我开始学习MySQL,并且在选择和计算im多个表时遇到一些问题。

我有两张桌子:

第一张表“地点”

id | name       | 
1  | restaurant |

第二张表“评级”

id | expert   | place_id | design | personal | cooking 
1  | expert 1 |  1       |    5   |    5     |   4
2  | expert 2 |  1       |    3   |    3     |   3
3  | expert 3 |  1       |    4   |    2     |   3

我用

选择地点
$places = Place::all();

并使用它

return view('place',compact('places'));

我需要将“rating”表中的数据与“places”一起使用,并且不知道该怎么做

我需要找到所有值的平均值和每种类型值的平均值,并将其与地点一起使用。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

假设你使用了至少Laravel 5,你可以在你的Place模型中建立很多关系。

以下是docs

的示例
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Place extends Model
{
    /**
     * Get the comments for the blog post.
     */
    public function comments()
    {
        return $this->hasMany('App\Rating');
    }
}