Jak stworzyć wymowne zapytanie „IN” z Laravel?

111

Chcę wykonać zapytanie w Laravel Eloquent, tak jak tutaj jego surowe zapytanie MySQL

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

Próbowałem tego w Laravel Eloquent, ale to nie działa

DB::where("id IN(23,25)")->get()
Ravi Jethva
źródło

Odpowiedzi:

244

Oto, jak to robisz w elokwentnym

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

A jeśli używasz konstruktora zapytań, to:

$users = DB::table('users')->whereIn('id', array(1, 2, 3))->get();
Raheel
źródło
15

Jeśli używasz konstruktora zapytań, możesz użyć ciosu

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

Jeśli pracujesz z Eloquent, możesz użyć poniższego

$sendUsersList = Newsletter Subscription:: select ('*')
                ->whereIn('id', $send_users_list)
                ->get();
Nikunj K.
źródło
7

Składnia:

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

Użyj dla modelu użytkowników

$usersList = Users::whereIn('id', [1, 2, 3])->get();
srmilon
źródło