Como atribuir um valor para a hora de uma data?
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?
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
Curtidas 0
Respostas
Alex Lekao
13/03/2012
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.
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.
GOSTEI 0
Ricardo Albano
13/03/2012
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.
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.
GOSTEI 0
Alex Lekao
13/03/2012
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?
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?
GOSTEI 0