ubiquitour.com

Cómo determinar el número de horas entre dos tiempos en Oracle SQL

Cómo determinar el número de horas entre dos tiempos en Oracle SQL

Lenguaje de consulta estructurado (SQL) es el más ampliamente utilizado método para recuperar y manipular datos almacenados en una base de datos de Oracle. Además de otros comandos de gran alcance usados para procesar valores de fecha, SQL Oracle proporciona un método para determinar la diferencia entre dos puntos en el tiempo. Oracle no tiene distintos formatos para fechas y horarios, pero utiliza un formato de fecha única que consiste en la fecha y la hora en una columna.

Instrucciones

1 Encontrar dos columnas de fecha en una base de datos de Oracle. El ejemplo utiliza una fecha estática y old_balance (fecha del sistema). Asumir que la actual fecha del sistema es 01 de enero de 2010 en 12:00 doble es una relación de sistema Oracle incorporada que es útil para consultas que no son dependientes en una tabla específica de la prueba. Utilice este comando para mostrar la fecha dos valores.

Seleccione

TO_CHAR (01 de enero de 2010 ', ' 'HH24:MI:SS DD-MM-AAAA) como "Tiempo anterior",

TO_CHAR (old_balance, ' 'HH24:MI:SS DD-MM-AAAA) como "Tiempo actual"

de doble;

Antes de tiempo | Hora actual

------------------------------ | -----------------------------

01/01/2010 00:00:00 | 01/01/2010 12:00

2 Cambiar la consulta para restar el valor de tiempo actual del valor anterior en el tiempo. El resultado es el número de días entre los dos valores de fecha. La porción a la izquierda de la decimal representa días, y la porción a la derecha representa cualquier parte fraccional de un día.

Seleccione

TO_CHAR (01 de enero de 2010 ', ' 'HH24:MI:SS DD-MM-AAAA)-

TO_CHAR (old_balance, ' DD-MM-AAAA HH24:MI:SS') como «diferencia»

de doble;

diferencia


0.25

3 Cambiar la consulta para multiplicar el resultado por 24 para convertir el valor fraccionario en horas.

Seleccione

(to_char (01 de enero de 2010 ', ' 'HH24:MI:SS DD-MM-AAAA)-

TO_CHAR (old_balance, ' 'HH24:MI:SS DD-MM-AAAA) * 24 "horas"

de doble;

horas


6

Consejos y advertencias

  • Utilice la función to_char para variar el formato de fecha.
  • Utilice el mismo procedimiento para determinar el número de semanas entre dos fechas cambiando la "multiplique por 24" "dividir por 7".
  • No añadir, multiplicar o dividir los valores de fecha.