Ir para conteúdo
Fórum Script Brasil
  • 0

SQL Pesquisa em intervalo de datas


Guest Eliseu Lameira

Pergunta

Guest Eliseu Lameira

Estou fazendo um projeto em VB para uma empresa de entregas rápidas (motoboy) usando um BD em Access e estou com dificuldades em pesquisar quantas ocorrencias ocorreram num determinado período, veja como estou fazendo a pesquisa:

"Select * from ow where (datdesos between #" & d1 & "# And #" & d2 & "#) and (codmotos like '" & esprel.Text & "') order by numos")

onde:

ow é o meu banco de dados

datdesos é a data da ocorrencia

d1 é a data inicial da pesquisa

d2 é a data final da pesquisa

codmotos é o código do motoboy

esprel.text é o motoboy que preciso pesquisar

numos é o número da O.S.

resumindo eu preciso saber quantas vezes o motoboy foi acionado dentro de um determinado período e apresentar isso num relatório (MSFlexGrid);

eu até consigo fazer uma pesquisa dentro do mês mas se fizer uma pesquisa em dois meses dá pau.

Se alguém souber a solução eu agradeço

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Experimente com uma SQL assim:

"SELECT * FROM ow WHERE DateValue(datdesos) >= DateValue('" & d1 & "') AND DateValue(datdesos) <= DateValue('" & d2 & "') AND (codmotos LIKE '" & esprel.Text & "') ORDER BY numos"

Na época que usava Access eu sempre usei a função DateValue dentro da SQL para comparação de datas. Veja se dá certo aí.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Brigadão, deu certo!!! Não entendi o por quê o between não deu certo??? Nem meus professores conseguiram entender esse pau, mas mesmo assim VALEU!!!

Se me lembro bem, o problema é em relação a utilização do #data#, no qual o formato da data deve ser MM/dd/yyyy ao invés do nosso dd/MM/yyyy. Ou seja, acho que se usarmos o DateValue() em conjunto com o BETWEEN deve dar certo também - eu é que gosto mais de usar >= e <=.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Eliseu Lameira
Brigadão, deu certo!!! Não entendi o por quê o between não deu certo??? Nem meus professores conseguiram entender esse pau, mas mesmo assim VALEU!!!

Se me lembro bem, o problema é em relação a utilização do #data#, no qual o formato da data deve ser MM/dd/yyyy ao invés do nosso dd/MM/yyyy. Ou seja, acho que se usarmos o DateValue() em conjunto com o BETWEEN deve dar certo também - eu é que gosto mais de usar >= e <=.

Abraços,

Graymalkin

Eu até que tentei adaptar o DataValue no between mas não deu certo, então vai do seu jeito mesmo, o sisteminha ficou até que interessante. valeu

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...