如何进行LaravelEloquent"IN"查询?
How to Make Laravel Eloquent "IN" Query?
我想在 Laravel Eloquent 中进行查询,就像这里的原始 MySQL 查询
SELECT * from exampleTbl where id in(1,2,3,4)
我已经在 Laravel Eloquent 中尝试过,但它不起作用
DB::where("id IN(23,25)")->get()
这是您在 Eloquent
中的做法
$users = User::whereIn('id', array(1, 2, 3))->get();
如果您使用的是查询生成器,那么:
$users = DB::table('users')->whereIn('id', array(1, 2, 3))->get();
如果您使用的是查询生成器,那么您可以使用 blow
DB::table(Newsletter Subscription)
->select('*')
->whereIn('id', $send_users_list)
->get()
如果您使用的是 Eloquent 那么您可以按如下方式使用
$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();
正如@Raheel 回答的那样没问题,但如果您使用 Laravel 6/7
然后用EloquentwhereIn
查询。
示例 1:
$users = User::wherein('id',[1,2,3])->get();
示例 2:
$users = DB::table('users')->whereIn('id', [1, 2, 3])->get();
示例 3:
$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以来,有一个方法whereIntegerInRaw。执行时间比whereIn.
快
User::whereIn('id', [1, 2, 3])->get();
User::whereIntegerInRaw('id', [1, 2, 3])->get();
您可以看到 PR.
我想在 Laravel Eloquent 中进行查询,就像这里的原始 MySQL 查询
SELECT * from exampleTbl where id in(1,2,3,4)
我已经在 Laravel Eloquent 中尝试过,但它不起作用
DB::where("id IN(23,25)")->get()
这是您在 Eloquent
中的做法$users = User::whereIn('id', array(1, 2, 3))->get();
如果您使用的是查询生成器,那么:
$users = DB::table('users')->whereIn('id', array(1, 2, 3))->get();
如果您使用的是查询生成器,那么您可以使用 blow
DB::table(Newsletter Subscription)
->select('*')
->whereIn('id', $send_users_list)
->get()
如果您使用的是 Eloquent 那么您可以按如下方式使用
$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();
正如@Raheel 回答的那样没问题,但如果您使用 Laravel 6/7
然后用EloquentwhereIn
查询。
示例 1:
$users = User::wherein('id',[1,2,3])->get();
示例 2:
$users = DB::table('users')->whereIn('id', [1, 2, 3])->get();
示例 3:
$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以来,有一个方法whereIntegerInRaw。执行时间比whereIn.
快User::whereIn('id', [1, 2, 3])->get();
User::whereIntegerInRaw('id', [1, 2, 3])->get();
您可以看到 PR.