HEXTR: Cómo extraer los componentes de un valor de fecha-hora y establecer en cero los componentes restantes

Cómo:

Idiomas disponibles: informes, Maintain

La función HEXTR extrae uno o varios componentes de un valor de fecha-hora y los mueve a un campo fecha-hora de destino, con el resto de los componentes establecidos en cero.


Principio de página

x
Sintaxis: Cómo Extraer múltiples componentes de un valor de fecha-hora
HEXTR(datetime, 'componentstring', length, output)

donde:

datetime
Fecha-hora

Es un valor de fecha-hora del que se van extraer los componentes especificados.

componentstring
Alfanumérico

Es una cadena de códigos, en cualquier orden, que indica los componentes que serán extraídos y colocados en el campo fecha-hora de salida. La siguiente tabla muestra los valores válidos. Se considera que la cadena termina con cualquier carácter que no se encuentre en la lista:

Código

Descripción

C

siglo (los dos dígitos de orden superior sólo en el año de cuatro dígitos)

Y

año (los dos dígitos de orden inferior, únicamente del año de cuatro dígitos)

YY

Año de cuatro dígitos.

M

month

D

day

H

hora

I

minutos

S

segundos

s

milisegundos (los tres dígitos de orden superior del valor de microsegundos de seis dígitos)

u

microsegundos (los tres dígitos de orden inferior del valor de microsegundos de seis dígitos)

m

Los seis dígitos del valor de microsegundos.

n

Los tres dígitos de orden inferior de nueve dígitos decimales.

length

Es la longitud del valor devuelto de fecha-hora. Los valores válidos son:

  • 8 indica un valor de hora que incluye milisegundos.
  • 10 indica un valor de hora que incluye microsegundos.
  • 12 indica un valor de hora que incluye nanosegundos.
output

Es el campo que contiene el resultado o el formato del valor de salida, entre comillas simples. Este campo debe estar en formato de fecha-hora (datos de tipo H).



Ejemplo: Cómo extraer componentes de hora y minuto utilizando HEXTR

El origen de datos VIDEOTR2 tiene un campo fecha-hora llamado TRANSDATE, de tipo HYYMDI. La siguiente solicitud selecciona todos los registros que contienen la hora 09:18AM, independientemente del valor de los componentes restantes:

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

La salida es:

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

WebFOCUS