Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Duvida "datediff" e "getdate" no SQL Server

Ola meus amigos uma pequena duvida que tive em um exercicio paralelo e gostaria de saber se alguem ai sabe me explica o por que!

1: o exercicio é assim "Crie uma consulta que retorne quantos carros passaram por manutenção pelo funcionário ‘Pedro Alves’ 30 dias antes de sua locação."

fiz as relaçoes e tudo certo mas no "where" meu modo estava dirente do resultado segue o codigo

where t2.ds_funcionarioManut like 'Pedro Alves%' and
datediff(dd,t2.dt_UltManut, t3.dt_retirada, getdate()) < 30

esse foi meu modo e observe q coloquei o "getdate" depois de "t3.dt_retirada" e no proximo do professor nao tem. ele esqueceu? ou eu coloquei de mais? rsrs

where t2.ds_Funcionario like 'Pedro Alves'
and  datediff(dd,t1.dt_UltManut,t3.dt_retirada)<30

e esse é oq diz estar certo porem no meu eu coloquei um getdate para pegar a data da tabela e dizer q é menor q 30 dias

espero q tenham entendido

2 respostas
solução!

Na verdade o getdate() retorna a data atual do servidor. O exercicio pedia 30 dias antes da locação, então a comparação não teria a ver com a data de hoje.

E também no seu caso o getdate foi a mais, pois o datediff só tem 3 parametros: o que vc quer comparar (dias, meses, anos), a data inicial e a final.

Hum.. entendi muitoo obg