Ir para conteúdo

POWERED BY:

Arquivado

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

eronventer

Uso do BETWEEN

Recommended Posts

Ae pessoal,

 

To com duvida, quero pegar registros entre duas datas, sendo data inicial e data final..

Fiz da seguinte maneira:

 

SELECT * FROM tb_enquete WHERE data_ini BETWEEN data_fim AND status = 1 ORDER BY id DESC

Porém nada me retornou senod que no banco os registros cadastrados estao com data incial de 17/12/2008 e final

28/12/2008, pq nao me retorna nada dessa maneira?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beleza saquei, tentei dessa forma porém tive problemas...tenho 3 registros

que deveriam ser exibidos, mas só exibiu 2.

 

O registro que não apareceu esta cadastrado com a data inicial 18/12/2008 10:15:22

e data final 18:12/2008 12:45:00

 

O campo de data inicial e final é do tipo datetime.

Porque mesmo estando dentro do horário nao apareceu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

SELECT *

FROM tb_enquete

WHERE

now() BETWEEN data_ini AND data_fim

AND status = 1 ORDER BY id DESC

 

 

eh pq eu pensei q você usasse o campo date (soh a data)

 

tipo...

1/1/2000 -> 1/1/2000 00:00:00

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só retificando o que foi dito pelo Giesta, sempre cuide de usar o filtro de datas do mesmo modo que está cadastro no BD. Se você usar só a data (sem hora), ele assume só até 00:00:00, praticamente perde um dia todo. Como você só tinha 3 resultados e faltava 1, fica fácil identificar esse erro. Já com uma tabela com milhares de registros, é bem mais difícil saber qual o problema.

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.