Consertar formato de datas
Pessoal, na minha base foram cadastradas datas com o formato ´02/04/2004 11:45´ e isso tá causando problemas quando um Select com parametro de data no formato ´02/04/2004´ retorna resultados..
Teria um jeito de selecionar as datas como num ´ like ´02/04/2004¬´ ´ (ja que isso nao funciona, para consertá-las ou outra alternativa mais eficiente?
Desde ja agradeço!
Digaum
Teria um jeito de selecionar as datas como num ´ like ´02/04/2004¬´ ´ (ja que isso nao funciona, para consertá-las ou outra alternativa mais eficiente?
Desde ja agradeço!
Digaum
Rodsrabbit
Curtidas 0
Respostas
Vinicius2k
16/09/2004
Colega,
Vc pode usar a função CAST na comparação do campo com o parametro na clausula WHERE... algo parecido com isto :
Espero ter ajudado...
T+
Vc pode usar a função CAST na comparação do campo com o parametro na clausula WHERE... algo parecido com isto :
select * from TABELA where cast(CAMPO_TIMESTAMP as date) = :data
Espero ter ajudado...
T+
GOSTEI 0
Afarias
16/09/2004
Embora a solução apontada pelo Vina esteja correta, ela proporciona uma consulta ineficiente pois não permite q o banco de dados use um índice (no campo em questão)
Uma outra solução (quando necessário mais eficiência) seria::
select from tabela
where campo_timestamp between :data and :data+1
onde o parâmetro :data é do tipo ´date´
outra solução é criar um 2º campo ´imagem´ deste, q seja do tipo date e ´copiar´ (replicar) o valor do campo timestamp para este outro campo que servirá para consultas.
T+
Uma outra solução (quando necessário mais eficiência) seria::
select from tabela
where campo_timestamp between :data and :data+1
onde o parâmetro :data é do tipo ´date´
outra solução é criar um 2º campo ´imagem´ deste, q seja do tipo date e ´copiar´ (replicar) o valor do campo timestamp para este outro campo que servirá para consultas.
T+
GOSTEI 0
Vinicius2k
16/09/2004
Vc está corretíssimo afarias... :wink:
Eu não tinha analisado a questão pelo lado dos índices...
T+
Eu não tinha analisado a questão pelo lado dos índices...
T+
GOSTEI 0