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

Funcion horas minutos segundos

Estas en el tema de Funcion horas minutos segundos en el foro de SQL Server en Foros del Web. hola buen día espero me puedan ayudar no encuentra como crear una funcionar para obtener la diferencia de dos campos DATETIME solo necesito hora:minutos:segundos cuanto ...
  #1 (permalink)  
Antiguo 24/01/2014, 18:59
 
Fecha de Ingreso: agosto-2013
Ubicación: Monterrey
Mensajes: 17
Antigüedad: 10 años, 9 meses
Puntos: 0
Pregunta Funcion horas minutos segundos

hola buen día

espero me puedan ayudar no encuentra como crear una funcionar para obtener la diferencia de dos campos DATETIME solo necesito hora:minutos:segundos


cuanto con la siguiente función pero me agrega el campo de hora y ese campo no me es útil solo lo necesito en hora:minuto:segundos

alter FUNCTION dbo.Funcionhrsminsec
(
@FromDate DATETIME,
@ToDate DATETIME
)
RETURNS VARCHAR(80)
AS
BEGIN
RETURN (
SELECT
CASE DATEPART(DAYOFYEAR, Duration)
WHEN 2 THEN '1 Day, '
ELSE CAST(DATEDIFF(DAY, 0, Duration) AS VARCHAR(11)) + ' Dias, '
END +
CASE DATEPART(HOUR, Duration)
WHEN 1 THEN '1 Hour, '
ELSE DATENAME(HOUR, Duration) + ' Horas, '
END +
CASE DATEPART(MINUTE, Duration)
WHEN 1 THEN '1 Minute, '
ELSE DATENAME(MINUTE, Duration) + ' Minutos, '
END +
CASE DATEPART(SECOND, Duration)
WHEN 1 THEN '1 Second, '
ELSE DATENAME(SECOND, Duration) + ' Segundos'
END
FROM (
SELECT DATEADD(SECOND, ABS(DATEDIFF(SECOND, @FromDate, @ToDate)), 0) AS Duration
) AS d
)
END
  #2 (permalink)  
Antiguo 25/01/2014, 21:48
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Funcion horas minutos segundos

busca en el foro hay varios temas con esa pregunta :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 26/01/2014, 02:52
 
Fecha de Ingreso: julio-2012
Ubicación: Israel
Mensajes: 360
Antigüedad: 11 años, 9 meses
Puntos: 40
Respuesta: Funcion horas minutos segundos

Prueba esta opción:
Código SQL:
Ver original
  1. ALTER FUNCTION dbo.Funcionhrsminsec
  2.  (
  3.  @FromDate DATETIME,
  4.  @ToDate DATETIME
  5.  )
  6.  RETURNS VARCHAR(80)
  7.  AS
  8.  BEGIN
  9.  RETURN (SELECT CAST(Horas AS VARCHAR)+CASE WHEN Horas=1 THEN ' Hora, ' ELSE ' Horas, ' END+
  10.                 CAST(Minutos AS VARCHAR)+CASE WHEN Minutos=1 THEN ' Minuto, ' ELSE ' Minutos, ' END+
  11.                 CAST(Segundos AS VARCHAR)+CASE WHEN Segundos=1 THEN ' Segundo' ELSE ' Segundos' END
  12.         FROM    (SELECT Scnd/3600 Horas,
  13.                         (Scnd%3600)/60 Minutos,
  14.                         (Scnd%3600)%60 Segundos
  15.                 FROM    (SELECT DateDiff(SECOND,FromDate,ToDate) Scnd
  16.                         FROM    (SELECT CASE WHEN @FromDate>@ToDate THEN @ToDate ELSE @FromDate END FromDate,
  17.                                         CASE WHEN @FromDate>@ToDate THEN @FromDate ELSE @ToDate END ToDate) T1) T2) T3);
  18. END
__________________
El Castellano no es mi lengua materna: discúlpenme por los errores gramaticales.
Mi blog
  #4 (permalink)  
Antiguo 27/01/2014, 12:52
 
Fecha de Ingreso: agosto-2013
Ubicación: Monterrey
Mensajes: 17
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Funcion horas minutos segundos

muchas gracias por la ayuda funciona correctamente

gracias .....

Etiquetas: campo, funcion, horas, minutos, segundos, select, siguiente
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 10:37.