Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Thiago Lenzi

Consulta com ordem Maior para menor

Recommended Posts

Olá pessoas.

 

Tenho a tabela carro

 

id | nome

 

1 | Corsa

2 | Uno

3 | Fusca

 

 

e tenho a tabela

 

pecas

 

id |id_carros |nome_peca

 

1 |2 | cabo acelerador

2 |2 | cabo embreagem

3 |2 | cabo vela

4 |2 | cabo freio

5 |3 | cabo acelerador

6 |3 | Jogo de Vela

7 |1 | Volante

 

 

Agora vem a dúvida.

 

Como posso fazer um relatório para mostrar o nome do carro e as peças que relacionadas a ele na ordem onde,

o que tem menos peças deve ser o primeiro a aparecer na lista e vice-versa?

 

Desde já, muito obrigado.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça um outer join carros x peças , uma coluna virtual conta o número de peças por carro , faça deste select uma tabela virtual , ordene pela coluna de qtd de peças.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça um outer join carros x peças , uma coluna virtual conta o número de peças por carro , faça deste select uma tabela virtual , ordene pela coluna de qtd de peças.

Motta, Bravo, captou minha intenção. No entanto confesso não ser capaz de cria-la. Pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Thiago , estou num tablet onde é impossivel editar , amanhã se tiver tempo faço o sql.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Motta, muito obrigado pela disposição. Não consegui pegar a lógica da sintaxe.

Compartilhar este post


Link para o post
Compartilhar em outros sites

algo assim

select idcarro , nome, idpecaid , nome_peca ,qtd
from
(
select c.id idcarro , c.nome,p.id idpecaid , p.nome_peca
       (select count(*) 
        from pecas p2
        where p2.id = c.id) qtd_pecas
from carro c 
left join pecas p on p.id = c.id 
) virtual
order by qtd desc

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

algo assim


Motta, muito obrigado. Peguei a lógica e adaptei a minha necessidade.

 

De quebra, aprendi um pouco mais sobre. ;) De coração, muito obrigado.

 

Pessoas como você é raridade nesse mundo egoísta como o nosso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.