3
respostas

Dúvida em consulta aleatório

Boa noite!

Estava realizando essa consulta:

SELECT DATEADD(YEAR, 10, 2000-01-26);

No meu entendimento essa consulta deveria retornar essa data '2010.01.26', isto é, somaria 10 anos a data informada, porém resultado da consulta foi esse:

1915-05-28 00:00:00.000

O que fiz ou entendi errado?

Obrigada!!!

3 respostas

Bom dia Isabel, tudo bem contigo ?

Houve apenas um erro de digitação nessa query, datas no SQL é preciso trabalhar com aspas ( ' ) ao iniciar e finalizar a data, realize o código da seguinte forma que dará o resultado esperado:

SELECT DATEADD(YEAR, 10, '2000-01-26')

Espero ter ajudado, bons estudos e nunca pare!!!

Oi Stefano, obrigada pela ajuda!

Mas continuo com dúvida :(

Usando seu código sugerido:

SELECT DATEADD(YEAR, 10, '2000-01-26')

Está apresentando essa mensagem de erro:

Mensagem 242, Nível 16, Estado 3, Linha 2 A conversão de um tipo de dados varchar em um tipo de dados datetime resultou em um valor fora do intervalo.

Horário de conclusão: 2024-05-31T10:47:24.3172045-03:00

Onde estou errando?

Obrigada!!!

Isabel, executei a função novamente e tirei um print do resultado:

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeNão apresenta nenhum erro aqui em relação a sintaxe da query ou até mesmo sobre a execução.

"Mensagem 242, Nível 16, Estado 3, Linha 2 A conversão de um tipo de dados varchar em um tipo de dados datetime resultou em um valor fora do intervalo."

Esse erro é por que está executando mais coisas além dessa linha em questão. Se você tiver utilizando dentro de uma outra query, pode me mandar a query por completa? Caso não, execute somente essa linha do código que dará certo o resultado.

Espero ter ajudado!!!