Fórum Dificuldade em executar um select #398452
30/03/2011
0
Estou tendo problemas para executar alguns selects.
EX:
Tenho um sistema de controle de frota, e preciso mostrar em um relatorio o ultimo km de retorno de todos os veiculos, ou seja, quando o veiculo volta e gravado o km de retorno, o mesmo devera substituir o antigo km pelo km novo no relatorio.
select * from transportes
ex:
cod: 5 Carro:uno km:1000
cod:10 Carro:uno km:2000
cod:11 Carro:celta km:500
cod:12 Carro:uno km:3500
usando esse select abaixo consegui um avanço em tirar a duplicidade veja.
SELECT transporte.cod,kmf,transporte
FROM emphasis.transporte left join emphasis.carros on (nome = transporte)
GROUP BY transporte, nome
ORDER BY cod desc
resultado:
cod:5 Carro:uno km:1000
cod:11Carrocelta km:500
porem ele pega o primeiro registro de cada carro, e eu preciso que ele me mostre sempre o ultimo km de cada carro.
se alguém puder me ajudar eu agradesço.
André Luiz
Curtir tópico
+ 0Posts
30/03/2011
Wilson Junior
Aguardo retorno.
Gostei + 0
30/03/2011
André Luiz
Gostei + 0
30/03/2011
André Luiz
Estou tendo problemas para executar alguns selects.
EX:
Tenho um sistema de controle de frota, e preciso mostrar em um relatorio o ultimo km de retorno de todos os veiculos, ou seja, quando o veiculo volta e gravado o km de retorno, o mesmo devera substituir o antigo km pelo km novo no relatorio.
select * from transportes
ex:
cod: 5 Carro:uno km:1000
cod:10 Carro:uno km:2000
cod:11 Carro:celta km:500
cod:12 Carro:uno km:3500
usando esse select abaixo consegui um avanço em tirar a duplicidade veja.
SELECT transporte.cod,kmf,transporte
FROM emphasis.transporte left join emphasis.carros on (nome = transporte)
GROUP BY transporte, nome
ORDER BY cod desc
resultado:
cod:5 Carro:uno km:1000
cod:11Carrocelta km:500
porem ele pega o primeiro registro de cada carro, e eu preciso que ele me mostre sempre o ultimo km de cada carro.
se alguém puder me ajudar eu agradesço.
Cod int(10) notnull auto inctransporte varchar(45) notnullkmi int(10) notnulldatae datetime notnull datas datetime notnullkmf varchar(45) notnullmotorista varchar(45) notnulldestino varchar(45) notnullcalculo int(10) notnullemtransito int(2) notnullmotoristaretorno varchar(45) notnull
Gostei + 0
30/03/2011
Wilson Junior
SELECT DISTINCT transp.Cod, transp.Transporte, transp.KmF FROM TRANSPORTE transp WHERE transp.Cod = (SELECT MAX(transp2.Cod) FROM TRANSPORTE transp2 WHERE transp2.Transporte = transp1.Transporte) ORDER BY transp.Cod DESC
Espero ter colaborado.
Gostei + 0
30/03/2011
André Luiz
ele diz que não existe a tabela, e quando coloco a tabela diz não existir o campo transp1
Gostei + 0
30/03/2011
André Luiz
SELECT DISTINCT transp.Cod, transp.Transporte, transp.KmF FROM TRANSPORTE transp WHERE transp.Cod = (SELECT MAX(transp2.Cod) FROM TRANSPORTE transp2 WHERE transp2.Transporte = transp1.Transporte) ORDER BY transp.Cod DESC
Espero ter colaborado.
Obrigado pela ajuda, consegui resolver da seguinte forma.
select * from transportes t1
where km = (select max(km) from transportes t2 where t2.carro = t1.carro)
group by carro;
Gostei + 0
01/04/2011
Wilson Junior
Gostei + 0
29/04/2013
José
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)