Calcular llegada temprana o tardía
Tengo un problema en calculo con fechas y espero me ayude.
Resulta que tengo una BD con una tabla que tiene un campo cuyo valor esta en formato hora hh:nn:ss y corresponde al tiempo de llegada tempano o tardío de un personal (sean hora, minuto o segundo). Bien el valor de este campo se calcula con la diferencia de dos campos mas que son HoraFijada y hora_ingreso. HoraFijada por ejemplo es la hora en la que tiene que entrar o salir un personal, y la hora_ingreso es la hora en la que marcó su ingreso o salida dicho personal. El problema surge cuando quiero calcular la diferencia de horas ya que el valor de hora_ingreso me trae el día y la hora. Por ejemplo así debería ser:
TipoMovim HoraFijada hora_ingreso llegada_tardia
Entrada 07:00:00 06:45:20 00:00:00 (si entro a tiempo)
Salida 18:00:00 18:01:00 00:00:00 (si salio en tiempo)
Entrada 07:00:00 07:08:00 00:08:00 (si entro tarde)
Salida 18:00:00 17:55:00 00:05:00 (si salio antes de tiempo)
Pero me trae así:
Entrada 07:00:00 06:45:20 23:45:20 (si entro a tiempo)
Salida 18:00:00 18:01:00 00:01:00 (si salio en tiempo)
Entrada 07:00:00 07:08:00 00:08:00 (si entro tarde)
Salida 18:00:00 17:55:00 23:55:00 (si salio antes de tiempo)
¿Cómo puedo hacer para conseguir tener estos datos?