¿Cómo hacer una consulta elocuente “IN” de Laravel?

111

Quiero hacer una consulta en Laravel Eloquent como aquí su consulta MySQL sin procesar

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

He intentado esto en Laravel Eloquent pero no funciona

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

Respuestas:

244

Así es como te va en Eloquent

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

Y si está utilizando el generador de consultas, entonces:

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

Si está utilizando el generador de consultas, puede usar un golpe

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

Si está trabajando con Eloquent, puede usar lo siguiente

$sendUsersList = Newsletter Subscription:: select ('*')
                ->whereIn('id', $send_users_list)
                ->get();
Nikunj K.
fuente
7

Sintaxis:

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

Modelo de uso para usuarios

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