Como atribuir um valor para a hora de uma data?

13/03/2012

0

Olá,

Estou precisando atribuir um novo valor para uma hora.
Situação é a seguinte: tenho a data e hora de um evento, caso a hora seja inferior as 08:00hs da manhã, devo mudar a hora para as 08:00hs. Como posso fazer?

Ricardo Albano

Ricardo Albano

Responder

Posts

16/03/2012

Alex Lekao

Ola Ricardo, bom dia!!

Como estão os campos? esta como date ou datetime, etc?

Nao sei se entendi bem, mas acredito que vc posa usar o case.

CASE WHEN CAMPOX <= 08:00 THEN 08:00 ELSE CAMPOX END

Mais ou menos isso. rsrsr

Abraco.
Responder

20/03/2012

Ricardo Albano

Olá, Alex.

Desculpe a demora.
Os campos são datetime.
eu já consegui alterar a hora para as 08:00, com ajuda dos foruns.
Ficou assim: dateadd(hour, 8, cast(cast (@data as int) as datetime)). Funciona legal.
O meu problema, agora, aparece quando foi fazer a mesma coisa, só que para o período da tarde, ou seja, se iniciar antes das 13:00 horas, devo colocar 13. Só que ao mudar para 13:00 o sql server esta alterando para o dia seguinte.

Tem alguma sugestão? Já tentei com o set language brazilian, mas não deu.

Responder

22/03/2012

Alex Lekao

Oi Ricardo, boa tarde!!!

Deste jeito que vc disse que fez, todas as datas estao sendo convertidas para 8:00, e as que tem horario iguais ou superiores a 12:00, estao ficando para o Dia seguinte.

O comando que vc esta usando esta adicionando 8 horas ao que vc ja tinha de horario no campo.

se nao estiver errado, todas os registros estao ficando com 8 no horario inclusive aqueles que sao depois de 8 horas.

Era isto mesmo que vc queria?
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar