Expressões de Intervalo

Ago 31, 2021
admin

Uma expressão de intervalo produz um valor de INTERVAL YEAR TO MONTH ou INTERVAL DAY TO SECOND.

expressão_intervalo::=

Descrição da expressão_intervalo.gif segue

Descrição da expressão_intervalo.gif da ilustração.gif

As expressões expr1 e expr2 podem ser quaisquer expressões que avaliam a valores de tipo de dado DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, ou TIMESTAMP WITH LOCAL TIME ZONE.

Tempos e intervalos podem ser combinados de acordo com as regras definidas na Tabela 2-5. As seis combinações que produzem valores de intervalo são válidas em uma expressão de intervalo.

Both leading_field_precision e fractional_second_precision podem ser qualquer número inteiro de 0 a 9. Se você omitir o leading_field_precision para DAY ou YEAR, então o Banco de Dados Oracle usa o valor padrão de 2. Se você omitir o fractional_second_precision para o segundo, então o banco de dados usa o valor padrão de 6. Se o valor retornado por uma consulta contém mais dígitos que a precisão padrão, então o Banco de Dados Oracle retorna um erro. Portanto, é boa prática especificar uma precisão que você sabe que será pelo menos tão grande quanto qualquer valor retornado pela consulta.

Por exemplo, a seguinte instrução subtrai o valor da coluna order_date na tabela de exemplo orders (um valor de data/hora) do carimbo de tempo do sistema (outro valor de data/hora) para produzir uma expressão de valor de intervalo. Não se sabe há quantos dias foi colocado o pedido mais antigo, portanto o valor máximo de 9 para a precisão do campo de carga DAY é especificado:

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

Deixe uma resposta

O seu endereço de email não será publicado.