Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

JOIN FETCH carrega todos os dados do banco de dados ou apenas os da entidade?

Se eu realizar um Fetch Join em uma query layz, ele carregará todas as entidades do banco de dados de uma única vez ? mesmo com a presença de um Where ?

SELECT d FROM Department d JOIN FETCH d.employees WHERE d.name = 'TESTE';

Nesta query de teste acima, o FETCH JOIN em employees carregará todos os employees ou apenas os que baterem com o where ? e se for o caso de carregar tudo, nas próximas chamadas não necessitará chamar o banco?

1 resposta

Oi Felipe,

Vai carregar somente os registros de acordo com os filtros da query.

No seu exemplo, vai carregar apenas os employees que estejam associados ao department de nome TESTE.

Bons estudos!