SQL Server - Restar fechas en horas

 
Vista:

Restar fechas en horas

Publicado por Favio (3 intervenciones) el 11/08/2005 23:31:52
Gracias a todos por su tiempo. Mi pregunta consiste saber com puedo restar dos fechas, y poder obtener la diferencia en horas (a través de la función datediff), pero con la salvedad que los campos de dd, hh, aaaa, hh, mi; son campos separados y del tipo int. Es decir que tendría que ir construyendo la fecha a medida que voy ejecutando la consulta.
Muchsa gracias, había pensado en una función createdate, pero veo que no existe en MSSQL Server (o por lo menos, no la ví).

SELECT DATEDIFF (hh, CREATEDATE(dd,mm,aaaa,hh,mi), CREATEDATE(dd,mm,aaaa,hh,mi))
FROM tabla

Etc. ETc.

Otra cosa, qué pasa si sobran algunos minutos ????

Saludos y GRACIAS otra vez !
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Restar fechas en horas

Publicado por Liliana (151 intervenciones) el 18/08/2005 18:05:56
Hola,
Te mando la forma de convertir en fecha tus datos, también puede ser a través de una función definida por vos con ese código.

declare @dd int set @dd = 18
declare @mm int set @mm = 04
declare @yy int set @yy = 2005
declare @hh int set @hh = 10
declare @mi int set @mi = 11
declare @ss int set @ss = 12

select convert(datetime,
RIGHT( '0000' + CAST(@yy AS VARCHAR), 4) + RIGHT( '00' + CAST(@mm AS VARCHAR), 2) + RIGHT( '00' + CAST(@dd AS VARCHAR), 2) + ' ' +
+ RIGHT( '00' + CAST(@hh AS VARCHAR), 2) + ':' + RIGHT( '00' + CAST(@mi AS VARCHAR), 2) + ':' + RIGHT( '00' + CAST(@ss AS VARCHAR), 2)
)

En cuanto a los minutos sobrantes, nada, se restan las horas, incluso si la diferencia es de 1h 50', te informará 2 horas.

Saludos,
Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar