Frequently asked questions - Base

    From The Document Foundation Wiki
    < Faq‎ | Base
    This page is a translated version of the page Faq/Base/120 and the translation is 73% complete.
    Outdated translations are marked like this.


    ¿Cómo calcular una hora determinada?

    Teniendo dos campos, uno con la hora de inicio y el otro con la de finalización, es posible calcular la diferencia en minutos con una consulta como la siguiente:

    SELECT "ID", "Hora_Inicio", "Hora_Fin" CAST('00:' || DATEDIFF ('mi',"Hora_Inicio","Hora_Fin) || ':00' AS "TIME") AS "Duración" FROM  "Tabla1"

    Explicación

    Uso de la función DATADIFF para calcular la cantidad de minutos que hay entre dos horas

    • La función DATEDIFF puede emplearse para calcular el número de minutos entre dos horas.
    • El operador || concatena el resultado con cadenas de ceros que representan horas y segundos. Un ejemplo de resultado es: «00:75:00».
    • CAST convierte esta cadena al formato horario (TIME).
    • Internamente, una fecha o una hora es un valor numérico; «1» se corresponde con un día. La parte entera representa la fecha y la fraccionaria, la hora.
    • De manera predeterminada, la cabecera de columna es la fórmula que se utiliza para el cálculo. A menudo resulta conveniente añadir un alias (Duración en este ejemplo).

    Para obtener el resultado en formato horario, utilice la función TO_CHAR para darle formato.

    SELECT "ID","Hore_Inicio","Hora_Fin" TO_CHAR(CAST( '00:'|| DATEDIFF( 'mi',"Hora_Inicio","Hore_Fin)||':00' AS "TIME" ), 'HH:MI') AS "Duración" FROM "Tabla1"

    FR.FAQ Base 120 FormatHoraire.png