SQL - Última data dos registros
Olá!
Numa tabela possuo vários campos, sendo um do tipo data. Gostaria de saber se existe alguma função em SQL que extraia qual é o registro com a data mais rescente.
Detalhe: O último registro da tabela não é necessariamente o registro que possui o campo DATA com a data mais rescente. Então, o que faço atualmente para descobrir qual é o registro que possui a data mais rescente, é selecionar todos os registros da tabela e organizar em ordem decrescente, por data. Em seguida pego o primeiro registro do resultado da pesquisa. Funciona, mas isto está começando a ficar lento.
Tem outra maneira de encontrar esta data mais rescente sem ser da maneira que estou fazendo?
Grato.
wbb
Numa tabela possuo vários campos, sendo um do tipo data. Gostaria de saber se existe alguma função em SQL que extraia qual é o registro com a data mais rescente.
Detalhe: O último registro da tabela não é necessariamente o registro que possui o campo DATA com a data mais rescente. Então, o que faço atualmente para descobrir qual é o registro que possui a data mais rescente, é selecionar todos os registros da tabela e organizar em ordem decrescente, por data. Em seguida pego o primeiro registro do resultado da pesquisa. Funciona, mas isto está começando a ficar lento.
Tem outra maneira de encontrar esta data mais rescente sem ser da maneira que estou fazendo?
Grato.
wbb
Wbb
Curtidas 0
Respostas
Paulo_amorim
01/04/2004
Olá
voce pode, aoinves de mudar sua Query, apenas aprimora-la utilizando um limitador.
Assim, sugiro que continue com essa pesuisa decrescente por data (supondo):
mas utilize
LIMIT, TOP, ROWNUM...dependendo do banco vc usa um limitador
no MySQL p. ex. seria
Espero que ajude
Até+
voce pode, aoinves de mudar sua Query, apenas aprimora-la utilizando um limitador.
Assim, sugiro que continue com essa pesuisa decrescente por data (supondo):
SELECT * FROM tabela ORDER BY data DESC
mas utilize
LIMIT, TOP, ROWNUM...dependendo do banco vc usa um limitador
no MySQL p. ex. seria
SELECT * FROM tabela ORDER BY data DESC LIMIT 1
Espero que ajude
Até+
GOSTEI 0
Wbb
01/04/2004
Obrigado Paulo!
Pra falar a verdade não parece ter mudado a velocidade da pesquisa. Mas independente disto é sempre bom conhecer mais funções, tal como esta que você indicou.
Vou continuar tentando...
Obrigado!
wbb
Pra falar a verdade não parece ter mudado a velocidade da pesquisa. Mas independente disto é sempre bom conhecer mais funções, tal como esta que você indicou.
Vou continuar tentando...
Obrigado!
wbb
GOSTEI 0
Marco Salles
01/04/2004
Duas Considerações :
1) O Campo Data Da Sua Tabela é Indexado :?: :?: Geralmente a Indexaçõa Acelera as Pesquisas...
Para Melhorar a Performace Voce Pode Desconectar Temporariamente os Controles Conscientes De Dados Conectados a Uma Tabela...Na Verdade O Tempo Gasto Para Atualizar a Interface Com o Usuário é Muito Maior
do Que o Gasto Para Realisar os Calculos
1) O Campo Data Da Sua Tabela é Indexado :?: :?: Geralmente a Indexaçõa Acelera as Pesquisas...
Para Melhorar a Performace Voce Pode Desconectar Temporariamente os Controles Conscientes De Dados Conectados a Uma Tabela...Na Verdade O Tempo Gasto Para Atualizar a Interface Com o Usuário é Muito Maior
do Que o Gasto Para Realisar os Calculos
Table1.DisableControls //Faca os CALCULOS Table1.EnableControls
GOSTEI 0
Fabio.hc
01/04/2004
Tente assim:
select max(data) from tabela
GOSTEI 0