Laravel Eloquent加入三张桌子

时间:2014-04-13 09:58:43

标签: php sql laravel-4

我在其中一列

中有一张表actors,其中包含CSV
id      | suburb                         | name
1       | Newport, Williamstown, Altona  | Stephen
2       | Seaholme, Footscary            | George

我已将表格规范化为另一个表actors_suburb

actor_id| suburb
1       | Newport
1       | Williamstown
1       | Altona
2       | Seaholme
2       | Footscary

我有一张不同的表suburbs_near

 suburb   |  Council
 Newport  |  Hobson
 Footscary|  Hobson

我想要归还议会中的所有演员,这就是我所尝试的

if (isset($input['council']) && $input['council'] != '')
        {

            $query = $query->join('actors_suburb', 'actors.id', '=', 'actors_suburb.actor_id')
                           ->join('suburb_near', 'actors_suburb.suburb', '=', 'suburb_near.suburb')
                           ->select(array('actors.*', 'actors_suburb.*', 'suburb_near.suburb' , 'suburb_near.council'))
                           ->where('council', 'like', '%'. $input['council'].'%')
                           ->orderBy('views', 'desc');
        }

但是当我输入时,它没有返回任何结果?council = Hobson,它应该返回一些结果。请帮忙。

1 个答案:

答案 0 :(得分:1)

道歉,如果这是不正确的,我会尝试评论,但我还没有得到声誉。我只是在学习Eloquent,但是你不能错过 - > get()或 - > paginate(10)?

->orderBy('views', 'desc')->get();