Ir para conteúdo

POWERED BY:

Arquivado

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

webfuture

Falha com between

Recommended Posts

Galera, ca estou eu novamente com outra tretinha que não to conseguindo resolver:Tenho este SQL:SQL = SQL & " Year(data_nascimento) - Year(GetDate()) between " & idade_inicial & " and " & idade_final & " and "Onde pego o ano do campo data_nascimento do banco de dados e subtraio com o ano atual para saber qual a idade do usuario ai faço o between só que esta dando erro :Arithmetic overflow error converting expression to data type datetime.Sei la, este foi um jeito que encontrei para fazer isto, se alguem souber como fazer de outra forma...WebFuture

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como está o valor de "idade_inicial" e "idade_final" ?Ao inves de subtrair as datas, utilize o função DateDiffPortanto seu código deveria sair mais ou menos assim

where DateDiff("y",data_nascimento,GetDate()) between 20 and 25

Só para salientar que o formato nativo do SQL de DATA é no formato "yyyy-mm-dd hh:mm:ss"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara eu tive que fazer um esquema desses a algum tempo... e Fiz diferente.......coloquei como um cáculo... e funcionou bacana......ele pega a idade do cara, subtrai pela data atual, depois divide pela quantidade de Dias do Mês... e depois divide mais uma vez pela quantidade de meses no ano.......<%data = tabela("datanascimento")dia = datediasvida = dia-dataidade = diasvida/30/12%>na Hora de Exibir os dados... tive que colocar o Int, pq caso contrário... ele coloca o número com casas decimais....<%=(int(idade))&" Anos"%>Saco?Qualquer coisa Retorna......

Compartilhar este post


Link para o post
Compartilhar em outros sites

A princípio tentei da primeira forma e deu o seguinte erro: Tipo de erro:Erro de compilação do Microsoft VBScript (0x800A0401)Fim da instrução esperado/novo.com.br/amoronline/busca.asp, line 175, column 24SQL = SQL & " DateDiff("y", data_nascimento, GetDate()) between " & idade_inicial & " and " & idade_final & " and "-----------------------^Não consegui fazer funcionar...rsWebFuture

Compartilhar este post


Link para o post
Compartilhar em outros sites

escreve na tela SQL pra ver como ta vindo e posta aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu deixo o Y entre aspas simples da o seguinte erro:Invalid parameter 1 specified for datediff.o SQL esta assim:select * from cadastros WHERE DateDiff('y', data_nascimento, GetDate()) between 18 and 27 WebFuture

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.