Duvida sobre uma consulta JPQL

1 resposta
jpqljpajava
Dayson_Rodrigues

Galera duvida aqui sobre uma consulta, é o seguinte

Tenho uma tabela Carro e ModeloCarro, onde na minha tabela Carro, possuo uma chave estrangeira de ModeloCarro

*Na minha tabela Carro tenho seguintes atributos.
codigo,ano,cor,placa,codigo_modeloCarro

*Na minha tabela ModeloCarro tenho seguintes atributos.
codigo,categoria,nome,codigo_fabricante

OBS: Na minha consulta quero buscar todos nomes da tabela modeloCarro em ordem alfabética com a placa de cada Carro.

1 Resposta

lvbarbosa

Se você tem uma referência reversa de Modelo para Carro no Java, basta selecionar todos os modelos e ordenar por nome. Naturalmente você vai ter todas as placas para cada modelo, pois tem acesso aos carros.

SELECT DISTINCT m FROM Modelo m JOIN FETCH m.carros ORDER BY m.nome

Se m.carros já estiver setado como eager loading, n precisa do join fetch.

Se quiser consumir menos memória, pode selecionar só os nomes e as placas e tratar a lista de Object[] que é devolvida.

SELECT m.nome, c.placa FROM Modelo m INNER JOIN m.carros c ORDER BY m.nome
Criado 27 de junho de 2017
Ultima resposta 27 de jun. de 2017
Respostas 1
Participantes 2