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) notaEn 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.