SQL - query de minutos trascurridos

beas
sql
Etiquetas: #<Tag:0x00007fb8db360600> #<Tag:0x00007fb8db3603a8>

#1

hola a todos

tengo la siguiente consulta


select BELNR_ID,BELPOS_ID,DocDate,AUFTRAG,APLATZ_ID,
        CONVERT(VARCHAR(10),ANFZEIT,103) AS 'Fecha Inicio', 
		RIGHT(ANFZEIT, 7) AS 'Hora Inicio',
		CONVERT(VARCHAR(10),ENDZEIT,103) AS 'Fecha Fin', 
		RIGHT(ENDZEIT, 7) AS 'Hora fin',
		ABS(DATEDIFF(minute, RIGHT(ANFZEIT, 7), RIGHT(ENDZEIT, 7))) as 'MinutosTranscurridos',
		ZEIT,LEFT(APLATZ_ID,5) AS 'Maquina',LEFT(AUFTRAG,2) AS 'Turno' from BEAS_ARBZEIT

donde estoy ocupando

ABS(DATEDIFF(minute, RIGHT(ANFZEIT, 7), RIGHT(ENDZEIT, 7))) as ‘MinutosTranscurridos’

ABS para convertir a positivo los datos y el DATEDIFF para sacar los minutos trascurridospero tengo un pequeño detalle.

cuando el rango es dentro del mismo dia durante las 24 horas si me manda el rango correcto de minutos transcurridos

pero cuando el rango habarca dos dias me manda un rato erroneo

**ejemplos: **

** 19/04/2017 1:00AM 19/04/2017 6:00AM 300 MIN “esto es ok”**

18/04/2017 10:00PM 19/04/2017 1:00AM 1260 MIN “ESTO NO ESTA BIEN”


#2

Tu motor de DB es SQL Server?


#3

si asi es estoy ocupando sql, y solo estoy ocupando la hora de inicio y la hora de fin


#4

Perdona la tardanza, Probablemente el problema seria el formato de tu hora (12), podrías intentar convertirlo a formato 24

SELECT CONVERT(char(5), GETDATE(), 108)


#5

Este tema se cerró por inactividad.

Copia la URL de este debate, y abre un nuevo tema en #feedback si:

  • El autor del debate no marcó ninguna respuesta como solución, y tú crees tener la solución
  • Crees tener otra solución a la que actualmente está marcada.

Si, en cambio tienes una duda parecida a la que se debatió, o la misma duda, abre un nuevo tema en la categoría que corresponda y pon que el tema se debatió oportunamente (pega el enlace a este debate), así los otros lectores pueden saber de qué hablas.

Ayúdanos a tener una comunidad organizada.