Cadenas TIMEFORMAT y DATEFORMAT - Amazon Redshift

Cadenas TIMEFORMAT y DATEFORMAT

El comando COPY utiliza las opciones DATEFORMAT y TIMEFORMAT para analizar los valores de fecha y hora de sus datos de origen. DATEFORMAT y TIMEFORMAT son cadenas formateadas que deben coincidir con el formato de los valores de fecha y hora de sus datos de origen. Por ejemplo, un comando COPY que cargue datos de origen con el valor de fecha Jan-01-1999 debe incluir la siguiente cadena DATEFORMAT:

COPY ... DATEFORMAT AS 'MON-DD-YYYY'

Para obtener más información sobre cómo administrar las conversiones de datos de COPY, consulte Parámetros de conversión de datos.

Las cadenas DATEFORMAT y TIMEFORMAT pueden contener separadores de fecha y hora (como “-”, “/” o “:”), así como los formatos datepart y timepart de la tabla siguiente.

nota

Si no puede hacer coincidir el formato de sus valores de fecha u hora con los siguientes formatos de datepart y timepart, o si tiene valores de fecha y hora que utilizan formatos diferentes entre sí, utilice el argumento 'auto' con el parámetro DATEFORMAT o TIMEFORMAT. El argumento 'auto' reconoce varios formatos que no se admiten cuando se utiliza una cadena DATEFORMAT o TIMEFORMAT. Para obtener más información, consulte Utilización del reconocimiento automático con DATEFORMAT y TIMEFORMAT.

Partes de fecha o de hora Significado
YY Año sin el siglo
AAAA Año con el siglo
MM Mes como un número
MON Mes con nombre (nombre abreviado o completo)
DD Día del mes como un número
HH o HH24 Hora (formato de 24 horas)
nota

En las cadenas con el formato DATETIME de las funciones SQL, HH es lo mismo que HH12. No obstante, en las cadenas DATEFORMAT y TIMEFORMAT para COPY, HH es lo mismo que HH24.

HH12 Hora (formato de 12 horas)
MI Minutos
SS Segundos
AM o PM Indicador meridiano (para formato de 12 horas)

El formato de fecha predeterminado es YYYY-MM-DD. El formato predeterminado de marca temporal sin zona horaria (TIMESTAMP) es AAAA-MM-DD HH:MI:SS. El formato predeterminado de marca temporal con zona horaria (TIMESTAMPTZ) es AAAA-MM-DD HH:MI:SSOF, donde OF es el desplazamiento de UTC (por ejemplo, - 8:00). No puede incluir un especificador de zona horaria (TZ, tz u OF) en timeformat_string. El campo de segundos (SS) también admite fracciones de segundos hasta un nivel de detalle de microsegundos. Para cargar datos TIMESTAMPTZ que estén en un formato diferente al predeterminado, especifique 'auto'.

A continuación, encontrará algunos ejemplos de fechas u horas que puede encontrar en sus datos de origen, así como las cadenas DATEFORMAT o TIMEFORMAT correspondientes.

Ejemplo de fecha u hora de los datos de origen Sintaxis de DATEFORMAT o TIMEFORMAT
03/31/2003 DATEFORMAT AS 'MM/DD/YYYY'
31 de marzo de 2003 DATEFORMAT AS 'MON DD, YYYY'
03.31.2003 18:45:05

03.31.2003 18:45:05.123456

TIMEFORMAT AS 'MM.DD.YYYY HH:MI:SS'

Ejemplo

Para ver un ejemplo del uso de TIMEFORMAT, consulte Carga de una marca temporal o de fecha.