[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Renato Machado
Criador Renato Machado 21/05/2021

Como uso o operador IN nesse caso?

preciso montar essa query

SELECT users.name, 

balances.data,

balances.amount 

FROM users 

INNER JOIN balances

ON balances.user_id = users.id 

WHERE balances.user_id IN (2,3,4)

Manager Carlos Ferreira 21/05/2021

Olá, Renato!
Tudo bem?

O Laravel tem o whereIn('balances.user_id', [2, 3, 4])
(https://laravel.com/docs/8.x/collections#method-wherein)

Você pode fazer essa consulta explorando os relacionamentos do Eloquent, ou pode usar o join mesmo, igual fez. (Assista esse curso: https://academy.especializati.com.br/curso/laravel-relacionamentos-tabelas-gratis)

$result = User::join('balances', 'balances.user_id', '=', 'users.id')
    ->select('users.name', 'balances.data', 'balances.amount')
    ->whereIn('balances.user_id', [2, 3, 4])
    ->get();

Se explorar os relacionamentos do Eloquent esse exemplo pode ficar ainda mais simples.

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!