

 Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la [publicación del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Función DATE\$1TRUNC
<a name="r_DATE_TRUNC"></a>

La función DATE\$1TRUNC trunca todo literal o expresión de marca temporal basado en la parte de fecha especificada, como la hora, la semana o el mes. 

## Sintaxis
<a name="r_DATE_TRUNC-synopsis"></a>

```
DATE_TRUNC('datepart', timestamp)
```

## Argumentos
<a name="r_DATE_TRUNC-arguments"></a>

 *datepart*   
La parte de fecha que trunca el valor de una marca temporal. La *timestamp* de entrada se trunca en la precisión de la entrada *datepart*. Por ejemplo, `month` se trunca en el primer día del mes. Los formatos válidos son los siguientes:   
+ microsegundo, microsegundos
+ milisegundo, milisegundos
+ segundo, segundos
+ minuto, minutos
+ hora, horas
+ día, días
+ semana, semanas
+ mes, meses
+ trimestre, trimestres
+ año, años
+ década, décadas
+ siglo, siglos
+ milenio, milenios
Para obtener más información sobre las abreviaturas de algunos formatos, consulte . [Partes de fecha para funciones de fecha o marca temporal](r_Dateparts_for_datetime_functions.md)

 *timestamp*   
Una columna de marca temporal o una expresión que, implícitamente, se convierte en una marca temporal.

## Tipo de retorno
<a name="r_DATE_TRUNC-return-type"></a>

TIMESTAMP

## Ejemplos
<a name="r_DATE_TRUNC-example"></a>

‎Trunque la marca temporal de entrada en el segundo.

```
SELECT DATE_TRUNC('second', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-30 04:05:06
```

‎Trunque la marca temporal de entrada al minuto.

```
SELECT DATE_TRUNC('minute', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-30 04:05:00
```

‎Trunque la marca temporal de entrada a la hora.

```
SELECT DATE_TRUNC('hour', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-30 04:00:00
```

‎Trunque la marca temporal de entrada al día.

```
SELECT DATE_TRUNC('day', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-30 00:00:00
```

‎Trunque la marca temporal de entrada al primer día de un mes.

```
SELECT DATE_TRUNC('month', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-01 00:00:00
```

‎Trunque la marca temporal de entrada al primer día de un trimestre.

```
SELECT DATE_TRUNC('quarter', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-01 00:00:00
```

‎Trunque la marca temporal de entrada al primer día de un año.

```
SELECT DATE_TRUNC('year', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-01-01 00:00:00
```

‎Trunque la marca temporal de entrada al primer día de un siglo.

```
SELECT DATE_TRUNC('millennium', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2001-01-01 00:00:00
```

‎Trunque la marca temporal de entrada al lunes de un mes.

```
select date_trunc('week', TIMESTAMP '20220430 04:05:06.789');
date_trunc
2022-04-25 00:00:00
```

En el siguiente ejemplo, la función DATE\$1TRUNC usa la parte de fecha “week” (semana) para devolver la fecha del lunes de cada semana. 

```
select date_trunc('week', saletime), sum(pricepaid) from sales where
saletime like '2008-09%' group by date_trunc('week', saletime) order by 1;

date_trunc  |    sum
------------+-------------
2008-09-01  | 2474899
2008-09-08  | 2412354
2008-09-15  | 2364707
2008-09-22  | 2359351
2008-09-29  |  705249
```