Sumário

Search

  1. Prefácio
  2. A Linguagem de Transformação
  3. Constantes
  4. Operadores
  5. Variáveis
  6. Datas
  7. Funções
  8. Criação de funções personalizadas
  9. Referência de API da Função Personalizada

Referência de Linguagem de Transformação

Referência de Linguagem de Transformação

TRUNC (Datas)

TRUNC (Datas)

Trunca datas para um ano, mês, dia, hora, minuto, segundo, milissegundo ou microssegundo específico. Você também pode usar TRUNC para truncar números.
Você pode truncar as seguintes partes de data:
  • Ano.
    Se você truncar a parte do ano da data, a função retornará Jan 1 do ano de entrada com a hora definida como 00:00:00.000000000. Por exemplo, a seguinte expressão retornará 1/1/1997 00:00:00.000000000:
    TRUNC(12/1/1997 3:10:15, 'YY')
  • Mês.
    Se você truncar a parte do mês de uma data, a função retornará o primeiro dia do mês com a hora definida como 00:00:00.000000000. Por exemplo, a seguinte expressão retornará 4/1/1997 00:00:00.000000000:
    TRUNC(4/15/1997 12:15:00, 'MM')
  • Dia.
    Se você truncar a parte do dia de uma data, a função retornará a data com a hora definida como 00:00:00.000000000. Por exemplo, a seguinte expressão retornará 6/13/1997 00:00:00.000000000:
    TRUNC(6/13/1997 2:30:45, 'DD')
  • Hora.
    Se você truncar a parte da hora de uma data, a função retornará a data com os minutos, segundos e sub-segundos definidos como 0. Por exemplo, a seguinte expressão retorna 01.04.97 11:00:00.000000000:
    TRUNC(4/1/1997 11:29:35, 'HH')
  • Minuto.
    Se você truncar a parte do minuto de uma data, a função retornará a data com os segundos e subsegundos definidos como 0. Por exemplo, a seguinte expressão retorna 22.05.97 10:15:00.000000000:
    TRUNC(5/22/1997 10:15:29, 'MI')
  • Segundo.
    Se você truncar a segunda parte de uma data, a função retornará a data com os milissegundos definidos como 0. Por exemplo, a seguinte expressão retorna 22.05.97 10:15:29.000000000:
    TRUNC(5/22/1997 10:15:29.135, 'SS')
  • Milissegundo.
    Se você truncar a parte de milissegundo de uma data, a função retornará a data com os microssegundos definidos como 0. Por exemplo, a seguinte expressão retorna 22.05.97 10:15:30.135000000:
    TRUNC(5/22/1997 10:15:30.135235, 'MS')
  • Microssegundo.
    Se você truncar a parte de microssegundo de uma data, a função retornará a data com os nanossegundos definidos como 0. Por exemplo, a seguinte expressão retorna 22.05.97 10:15:30.135235000:
    TRUNC(5/22/1997 10:15:29.135235478, 'US')

Sintaxe

TRUNC(
date
[,
format
] )
A tabela a seguir descreve os argumentos para este comando:
Argumento
Obrigatório/
Opcional
Descrição
data
Obrigatório
Tipo de dados Data/Hora. Os valores de data que você deseja truncar. Você pode inserir qualquer expressão de transformação válida que avalie em uma data.
formato
Opcional
Insira uma string de formato válida. A string de formato não faz distinção entre maiúsculas e minúsculas. Se você omitir a string de formato, a função truncará a parte da hora da data, definindo-a como 00:00:00.000000000.

Valor de Retorno

Data.
NULL se um valor transmitido para a função for NULL.

Exemplos

As seguintes expressões truncam a parte do ano de dados na porta DATE_SHIPPED:
TRUNC( DATE_SHIPPED, 'Y' ) TRUNC( DATE_SHIPPED, 'YY' ) TRUNC( DATE_SHIPPED, 'YYY' ) TRUNC( DATE_SHIPPED, 'YYYY' )
DATE_SHIPPED
RETURN VALUE
Jan 15 1998 2:10:30AM
Jan 1 1998 00:00:00.000000000
Apr 19 1998 1:31:20PM
Jan 1 1998 00:00:00.000000000
Jun 20 1998 3:50:04AM
Jan 1 1998 00:00:00.000000000
Dec 20 1998 3:29:55PM
Jan 1 1998 00:00:00.000000000
NULL
NULL
As seguintes expressões truncam a parte do mês de cada data na porta DATE_SHIPPED:
TRUNC( DATE_SHIPPED, 'MM' ) TRUNC( DATE_SHIPPED, 'MON' ) TRUNC( DATE_SHIPPED, 'MONTH' )
DATE_SHIPPED
RETURN VALUE
Jan 15 1998 2:10:30AM
Jan 1 1998 00:00:00.000000000
Apr 19 1998 1:31:20PM
Apr 1 1998 00:00:00.000000000
Jun 20 1998 3:50:04AM
Jun 1 1998 00:00:00.000000000
Dec 20 1998 3:29:55PM
Dec 1 1998 00:00:00.000000000
NULL
NULL
As seguintes expressões truncam a parte do dia de cada data na porta DATE_SHIPPED:
TRUNC( DATE_SHIPPED, 'D' ) TRUNC( DATE_SHIPPED, 'DD' ) TRUNC( DATE_SHIPPED, 'DDD' ) TRUNC( DATE_SHIPPED, 'DY' ) TRUNC( DATE_SHIPPED, 'DAY' )
DATE_SHIPPED
RETURN VALUE
Jan 15 1998 2:10:30AM
Jan 15 1998 00:00:00.000000000
Apr 19 1998 1:31:20PM
Apr 19 1998 00:00:00.000000000
Jun 20 1998 3:50:04AM
Jun 20 1998 00:00:00.000000000
Dec 20 1998 3:29:55PM
Dec 20 1998 00:00:00.000000000
Dec 31 1998 11:59:59PM
Dec 31 1998 00:00:00.000000000
NULL
NULL
As seguintes expressões truncam a parte da hora de cada data na porta DATE_SHIPPED:
TRUNC( DATE_SHIPPED, 'HH' ) TRUNC( DATE_SHIPPED, 'HH12' ) TRUNC( DATE_SHIPPED, 'HH24' )
DATE_SHIPPED
RETURN VALUE
Jan 15 1998 2:10:31AM
Jan 15 1998 02:00:00.000000000
Apr 19 1998 1:31:20PM
Apr 19 1998 13:00:00.000000000
Jun 20 1998 3:50:04AM
Jun 20 1998 03:00:00.000000000
Dec 20 1998 3:29:55PM
Dec 20 1998 15:00:00.000000000
Dec 31 1998 11:59:59PM
Dec 31 1998 23:00:00.000000000
NULL
NULL
As seguintes expressões truncam a parte do minuto de cada data na porta DATE_SHIPPED:
TRUNC( DATE_SHIPPED, 'MI' )
DATE_SHIPPED
RETURN VALUE
Jan 15 1998 2:10:30AM
Jan 15 1998 02:10:00.000000000
Apr 19 1998 1:31:20PM
Apr 19 1998 13:31:00.000000000
Jun 20 1998 3:50:04AM
Jun 20 1998 03:50:00.000000000
Dec 20 1998 3:29:55PM
Dec 20 1998 15:29:00.000000000
Dec 31 1998 11:59:59PM
Dec 31 1998 23:59:00.000000000
NULL
NULL