USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Função DateDiff no Access
Ewerton-RJ
RIO DE JANEIRO
RJ - BRASIL
ENUNCIADA !
Postada em 23/11/2004 17:10 hs            
Gostaria de saber como uso a função DateDiff em uma consulta no access.
 
Desde já obrigado.
 
 

Ewerton Oliveira
   
Sandro
não registrado
Postada em 23/11/2004 17:14 hs   
Da mesma forma que no VB, mas se você estiver dentro da QBE gráfica de edição de consultas, você deverá substituir a vírgula por ponto-e-vírgula:
 
    DateDiff("d";Data1;Data2)
     
Ewerton-RJ
RIO DE JANEIRO
RJ - BRASIL
Postada em 23/11/2004 17:31 hs            
Tb tentei desta forma, mas quando pesso a diferenca em ano, o access coloca automaticamente Duas aspas a mais, e quando eu nao coloco aspas e entende como um campo. O que devo fazer?

Ewerton Oliveira
     
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 23/11/2004 17:39 hs            
vc poderia escrever a forma q faz a consulta por favor?
TÓPICO EDITADO
 
Ewerton-RJ
RIO DE JANEIRO
RJ - BRASIL
ENUNCIADA !
Postada em 23/11/2004 17:45 hs            
Estou escrevendo desta maneira:
UPDATE Clientes SET Clientes.Inativo = True
WHERE (((DateDiff("yyyy",[DataCadastro],Date()))>=1));

Ewerton Oliveira
   
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 23/11/2004 18:50 hs            
Ewerton, é o seguinte...
Ao q parece vc quer q todos os clientes em que as Datas de cadastro iguais ou inferiores a um ano atrás seja colocado como situação inativo, certo?
 
Bom, o q acontece na sua consulta é q vc está fazendo um cálculo sem equalizar.
Vc faz uma conta q funciona mas não acontece nada pois não vc não está impondo uma condição...
Então tente assim:
 
UPDATE Clientes SET Clientes.Inativo = True
WHERE Data_Cadastro <= DateAdd("yyyy", -4, Date());
 
O q acontece após esta atualização é q todos os registros inferiores a 4 anos a partir da data atual serão atualizados, ou especificamente, os clientes cadastrados há mais de 4 anos serão colocados como inativos.
 
Exemplo:
Data_Cadastro = 09/09/1999
Situação do cliente = Inativo
 
Data_Cadastro = 09/11/2001
Situação do cliente = Ativo
 
Entendeu? O q fiz foi apenas criar uma equação para q o seu Update fosse realizado. Usando o DateDiff retornará um número inteiro, usei o DateAdd para q retorne uma data pq fica mais fácil de realizar a consulta das datas...
 
qq dúvida é só postar novamente ok?
 
t+
     
Página(s): 1/2      PRÓXIMA »


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página