Laravel 中查询 where 记录

Laravel 的 Eloquent 使用 Between


$query->whereBetween('age',[$from,$to])

这是生成 And between ... and ..., or between ... and ...orWhereBetween

Laravel 使用关联查询

参考:

  1. Query where column is in another table

  2. Laravel 5 where clause from another table

  3. Eloquent ORM —— 关联关系


$user_id=//however you get the userid here.

$posts = Post::whereHas('likes', function ($q) use($user_id){
   $q->where('user_id', $user_id);
})->get();

关联查询,使用with()方法会生成两条sql 语句,第一条sql是查询满足条件的所有 id, 第二条语句查询另外一个表 in(ids) 的。当sql 需要变成一条的时候,可以用whereHas方法.是查询已存在的关联关系,如果遇到多个关系时:

Laravel whereHas on multiple relationships,同时使用了with() 和whereHas方法。

原文地址:https://www.cnblogs.com/fsong/p/5931484.html