Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Cambiar sólo la fecha de un smalldatetime

Estas en el tema de Cambiar sólo la fecha de un smalldatetime en el foro de SQL Server en Foros del Web. Tengo un campo FECHAINI (tipo smallDateTime) con valores como: 2/5/2007 1:23:00 12/5/2002 12:45:00 23/1/2004 2:00:00 Quiero modificarlo (solo la parte fecha, no la hora) y ...
  #1 (permalink)  
Antiguo 16/05/2007, 11:34
 
Fecha de Ingreso: mayo-2006
Mensajes: 178
Antigüedad: 18 años
Puntos: 3
Cambiar sólo la fecha de un smalldatetime

Tengo un campo FECHAINI (tipo smallDateTime) con valores como:
2/5/2007 1:23:00
12/5/2002 12:45:00
23/1/2004 2:00:00

Quiero modificarlo (solo la parte fecha, no la hora) y que quede
1/1/2001 1:23:00
1/1/2001 12:45:00
1/1/2001 2:00:00

La orden sería del tipo:
UPDATE MiTabla SET FechaIni=........

Cualquier ayuda, me haría padre.....
  #2 (permalink)  
Antiguo 16/05/2007, 15:09
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Cambiar sólo la fecha de un smalldatetime

DateAdd(Day, -1, campofecha)

Eso restará un dia a la fecha y al mismo tiempo respetará la hora que tenga almacenada (porque efectivamente, restaste 24 horas).
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 16/05/2007, 23:37
 
Fecha de Ingreso: mayo-2006
Mensajes: 178
Antigüedad: 18 años
Puntos: 3
Re: Cambiar sólo la fecha de un smalldatetime

Gracias, me has dado la pista.

Pongo la solución buena:

UPDATE Tabla1 set FechaIni=dateadd(day, Datediff(day, FechaIni, '1/1/2001'),FechaIni)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:53.