Hola,
 
No entendí bien como quisieras que te devuelva el valor de las horas usadas si en minutos '40' o '00:40:00' etc. 
Yo estoy usando los campos en tipo datetime ya que no sabía en que contexto se iba a usar la Query. 
Para obetener lo minutos entre dos fechas: 
Código:
 
SELECT TIMESTAMPDIFF(MINUTE , h.h_inicio, h.h_fin ) AS diferencia FROM tu_tabla h
  y para obtenerlos en formato '00:40:00': 
Código:
 
SELECT SEC_TO_TIME((TIMESTAMPDIFF(MINUTE , h.h_inicio, h.h_fin ))*60) AS diferencia FROM tu_tabla h
  Espero que lo puedas aplicar a tu lógica y haya respondido tu pregunta, si no especifícame un poco más y respondo apenas pueda.