如何使 Laravel 雄辩的“ IN”查询?

我想使查询在 LaravelEloquent 像这里它的原始 MySQL 查询

SELECT  * from  exampleTbl where id in(1,2,3,4)

我在 Laravel Eloquent 中尝试过这种方法,但没有效果

DB::where("id IN(23,25)")->get()
263526 次浏览

这就是你在雄辩中的表现

$users = User::whereIn('id', array(1, 2, 3))->get();

如果你正在使用 Query Builder,那么:

$users = DB::table('users')->whereIn('id', array(1, 2, 3))->get();

如果您正在使用查询生成器,那么您可以使用一个打击

DB::table(Newsletter Subscription)
->select('*')
->whereIn('id', $send_users_list)
->get()

如果你正在使用雄辩,那么你可以使用如下

$sendUsersList = Newsletter Subscription:: select ('*')
->whereIn('id', $send_users_list)
->get();

句法:

$data = Model::whereIn('field_name', [1, 2, 3])->get();

用于 用户型号

$usersList = Users::whereIn('id', [1, 2, 3])->get();

这将是罚款,但如果你正在与 Laravel 6/7工作

然后使用雄辩 whereIn查询。

例子一:

$users = User::wherein('id',[1,2,3])->get();

例子二:

$users = DB::table('users')->whereIn('id', [1, 2, 3])->get();

例子三:

$ids = [1,2,3];


$users = User::wherein('id',$ids)->get();

也许你想用 whereRaw($query)

你的密码:

DB::where("id IN(23,25)")->get()

变成:

DB::whereRaw("id IN(23,25)")->get()

从 Laravel 5.7开始,就有了 IntegerInRaw 在哪里方法,执行时间比 在哪里快。

User::whereIn('id', [1, 2, 3])->get();


User::whereIntegerInRaw('id', [1, 2, 3])->get();

你可以看到 公关