HEXTR: Como Extrair Componentes de um valor Data-Hora e Como Definir os Componentes Restantes a Zero

Como:

Linguagens Disponíveis: Reporting, Maintain

A função HEXTR extrai um ou mais componentes de um valor data-hora e os move para um campo data-hora de destino com todos os outros componentes definidos como zero.


Topo da página

x
Sintaxe: Como Extrair Vários Componentes de um Valor Data-Hora
HEXTR(datetime, 'componentstring', length, output)

onde:

datetime
Data-hora

É o valor de data-hora do qual extrair os componentes especificados.

componentstring
Alfanumérico

É uma string de códigos, em qualquer ordem, que indica que os componentes devem ser extraídos e movidos para o campo de saída data-hora. A tabela a seguir exibe os valores válidos. A string é considerada eliminada por qualquer caractere que não esteja na lista:

Código

Descrição

L

século (somente os dois dígitos de alta ordem de um ano com quatro dígitos)

Y

ano (apenas os dois últimos dígitos dos quatro dígitos do ano)

AA

Ano com quatro dígitos.

M

mês

D

dia

H

Hora

I

minutos

S

segundos

s

milisegundos (os três primeiros dígitos dos seis dígitos de microsegundo)

u

microsegundos (os três dígitos menores do valor de seis-dígitos em microsegundos)

n

Todos os seis dígitos dos microssegundos

F

Três dígitos de baixa ordem de nove dígitos decimais.

comprimento

É o comprimento do valor data-hora retornado. Valores válidos são:

  • 8 indica um valor de hora que inclui milissegundos.
  • 10 indica um valor de hora que inclui microssegundos.
  • 12 indica um valor de hora que inclui microssegundos.
saída

É o campo que contém o resultado ou o formato do valor de saída posto entre aspas simples). Este campo deve ter o formato data-hora (tipo de dados H).



Exemplo: Como Extrair os Componentes de Hora e Minuto Utilizando o HEXTR

A fonte de dados VIDEOTR2 tem um campo data-hora chamado TRANSDATE de tipo HYYMDI. A solicitação a seguir seleciona todos os registros que contêm a hora 09:18AM, independentemente do valor dos componentes remanescentes:

TABLE FILE VIDEOTR2
PRINT TRANSDATE
BY LASTNAME
BY FIRSTNAME
WHERE HEXTR(TRANSDATE, 'HI', 8, 'HYYMDI') EQ DT(09:18AM)
END

A saída é:

LASTNAME         FIRSTNAME   TRANSDATE
--------         ---------   ---------
DIZON            JANET       1999/11/05 09:18
PETERSON         GLEN        1999/09/09 09:18

Information Builders