Expresiones de intervalo

Ago 31, 2021
admin

Una expresión de intervalo produce un valor de INTERVAL YEAR TO MONTH o INTERVAL DAY TO SECOND.

expresión_de_intervalo::=

Descripción de expresión_de_intervalo.gif sigue

Descripción de la ilustración expresión_de_intervalo.gif

Las expresiones expr1 y expr2pueden ser cualquier expresión que se evalúe a valores del tipo de datos DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, o TIMESTAMP WITH LOCAL TIME ZONE.

Los tiempos e intervalos pueden combinarse según las reglas definidas en la Tabla 2-5. Las seis combinaciones que producen valores de intervalo son válidas en una expresión de intervalo.

Tanto leading_field_precision como fractional_second_precision pueden ser cualquier número entero de 0 a 9. Si se omite el leading_field_precision para DAY o YEAR, entonces Oracle Database utiliza el valor por defecto de 2. Si se omite el fractional_second_precision para el segundo, entonces la base de datos utiliza el valor por defecto de 6. Si el valor devuelto por una consulta contiene más dígitos que la precisión por defecto, entonces Oracle Database devuelve un error. Por lo tanto, es una buena práctica especificar una precisión que sepa que será al menos tan grande como cualquier valor devuelto por la consulta.

Por ejemplo, la siguiente sentencia resta el valor de la columna order_date de la tabla de ejemplo orders (un valor de fecha y hora) de la marca de tiempo del sistema (otro valor de fecha y hora) para obtener una expresión de valor de intervalo. No se sabe cuántos días hace que se realizó el pedido más antiguo, por lo que se especifica el valor máximo de 9 para la precisión del campo de carga DAY:

SELECT (SYSTIMESTAMP - order_date) DAY(9) TO SECOND FROM orders WHERE order_id = 2458;

Deja una respuesta

Tu dirección de correo electrónico no será publicada.