Ir para conteúdo

POWERED BY:

Arquivado

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

janazi

Busca por período

Recommended Posts

Pessoal, estou tendo um problema ao tentar fazer uma busca por pedidos emitidos dentro de um determinado período, é o seguinte, eu preciso achar todos os pedidos que tenham como data de vencimento o 4 dias à partir da data de hoje, o formato que estavam sendo salvas as datas no mysql é dd/mm/yy eu tentei desse modo e tb dd/mm/yyyy mas o busca não dá certo, fiz usando between, mas ele não filtra corretamente o mês, só o dia...tipo tá retornando todo os pedidos por ex do dia 01 de qq mesalguma sugestão?

Compartilhar este post


Link para o post
Compartilhar em outros sites

vamos por partes.... se eu não me engano mysql é dd/mm/yyyy... o between teria que tar funcionando.. posta o codigo ai pra galera da uma olhada...

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa o datediffdiminui a sua data da data de hoje.Se for maior que 4 dias, ....

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código que eu estava usando era o seguintedata:= FormatDateTime('dd/mm/yyyy', date);data2:= FormatDateTime('dd/mm/yyyy', date + 4);qryPedidoNovo.SQL.Add('select codigo_pedido, data, hora, vencimento from dados_pedido where vencimento between '+data+' AND '+data2+'');O que pode estar dando errado? detalhe, o campo no mysql está varchar(10)

Compartilhar este post


Link para o post
Compartilhar em outros sites

tentei dessa maneira qryPedidoNovo.SQL.Add('select codigo_pedido, data, hora, vencimento from dados_pedido where cast vencimento between '+data+' AND '+data2+'');só que dá erro, não efetua a consulta, está certo a maneira como fiz?tente colocar cast(vencimento) mas tb deu erroahhhtentei cast(vencimento as date)Outra coisa, tentei colocar manualmente no sql a data, ficou assimqryPedidoNovo.SQL.Add('select codigo_pedido, data, hora, vencimento from dados_pedido where cast(vencimento as date) between ''08/11/05'' AND ''12/11/05''');só que ai ele retornou todos os pedidos do sistema entre o dia 08 e 12 de todos os meses

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho que pelo fato der um campo varchar no mysql, não está dando certo a consulta por data...eu queria converter o campo para date, porém o padrão no mysql é 0000-00-00 como mudar esse padrão???? para algo como dd/mm/yyyy ou até mesmo mm/dd/yyyy caso contrário vou ter que mudar muito a programação para adaptar aos 0000-00-00

Compartilhar este post


Link para o post
Compartilhar em outros sites

realmente o problema é teu campo ser varchar, pq pra ele a string 01/10/2005 é menos que 10/08/2005... pq ele pega os primeiros caracteres.. e qual é a possibilidade de você trocar essa campo na base passando ele pra data!?:|

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.