[firebase-br] COMO SELECIONAR, DENTRE REGISTROS IGUAIS, O DE MAIOR DATA?

Michel Sugimoto michelsugimoto em yahoo.com.br
Ter Nov 22 17:56:34 -03 2005


 > Tente isso:
 >
 > Select piloto,nascimento, max(data_corrida)  ultima_corrida from piloto
 > group by piloto,nascimento;
 >
 > Espero ter Ajudado!
 >
 > Luiz Carlos da Silva Soares

Luiz,

nao funcionaria pq o campo ultima_corrida teria q estar no group by... e 
assim traria todos os pilotos... mas surgiram ideias por aqui...

1- dar um select ordenando descendentemente,

Select piloto, nascimento, data_corrida, ultima_corrida from piloto 
order by data_corrida desc e ir percorrendo ate que a data mude

2- ou dar um select max(data) e depois colocar esta data maxima na 
clausula where...

valeu, []s t+

Luiz Carlos wrote:
> Michel Sugimoto wrote:
> 
>> Pessoas,
>>
>> eu tenho uma tabela, que contem campos duplicados, exceto por um campo 
>> data. exemplo (COM tabela ficticia):
>>
>> TABELA_PILOTO:
>> PILOTO VARCHAR(30),
>> NASCIMENTO DATE,
>> DATA_CORRIDA DATE,
>> PONTOS_GANHOS INTEGER;  // PONTOS GANHOS NA CORRIDA
>>
>> onde eu tenho varios registros com PILOTO e NASCIMENTO (dados que nao 
>> mudam) repetindo, e a DATA_CORRIDA nao repete.
>>
>> Pois bem, preciso de um select em que retorne dentre todas as corridas 
>> de um piloto, somente o nome do piloto, o nascimento e a data da 
>> ultima corrida. Por exemplo:
>>
>> PILOTO            NASCIMENTO    DATA_CORRIDA    PONTOS_GANHOS
>>
>> Michael schummi        10/10/1970    01/02/2005    8
>> Michael schummi        10/10/1970    01/04/2005    10
>> Michael schummi        10/10/1970    01/06/2005    1
>> Michael schummi        10/10/1970    01/08/2005    5
>> Michael schummi        10/10/1970    01/10/2005    3
>> Michael schummi        10/10/1970    01/12/2005    6
>>
>> o select me retornaria apenas o ultimo registro. Minha base nao esta 
>> ordenada pela "data da corrida". Na verdade, quero o ultimo registro 
>> pois vou usar o ultimo ponto ganho...
>>
>> Por group by nao da, pq se agrupar por piloto e nascimento, teria que 
>> pegar a media dos pontos ganhos... e nao eh isso de que eu preciso.
>>
>> []s, t+
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço 
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>

> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 





Mais detalhes sobre a lista de discussão lista