

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Funciones de fecha y hora
<a name="sql-functions-date"></a>

 Las funciones de fecha y hora funcionan con fechas y horas. Estas funciones permiten extraer componentes específicos de una fecha, realizar cálculos y manipular los valores de la fecha.

Los identificadores permitidos en estas funciones son:
+ YEAR
+ MONTH
+ DAY
+ HOUR
+ MINUTE
+ SECOND


|  **Función**  |  **Signature**  |  **Descripción**  | 
| --- | --- | --- | 
| `NOW` |  AHORA ()  | Devuelve la marca de tiempo actual con una precisión de milisegundos. Proporciona la hora exacta en el que se ejecuta en una consulta. | 
| `DATE_ADD` | DATE\_ADD (identificador, intervalo de duración, columna) | Devuelve la suma de un intervalo date/time y un número. days/hours, or of a date/time and date/time | 
| `DATE_SUB` | DATE\_SUB (identificador, duración del intervalo, columna) | Devuelve la diferencia entre un intervalo date/time y un número. days/hours, or between a date/time and date/time | 
| `TIMESTAMP_ADD` | TIMESTAMP\_ADD (identificador, duración del intervalo, columna) | Añade un intervalo de tiempo, en las unidades de tiempo dadas, a una expresión de fecha y hora. | 
| `TIMESTAMP_SUB` | TIMESTAMP\_SUB (identificador, intervalo de duración, columna) | Resta un intervalo de tiempo, en las unidades de tiempo dadas, de una expresión de fecha y hora. | 
| `CAST` | CAST (expresión como patrón de formato de marca de tiempo) | Convierte una expresión de cadena en una marca de tiempo utilizando el patrón de formato especificado. Los patrones más comunes incluyen el formato `'yyyy-MM-dd HH:mm:ss'` de fecha y hora estándar. Por ejemplo, `SELECT CAST('2023-12-25 14:30:00' AS TIMESTAMP) AS converted_timestamp` | 

**Example de una consulta SQL mediante las funciones enumeradas:**  

```
SELECT r.asset_id, r.int_value,
  date_add(DAY, 7, r.event_timestamp) AS date_in_future,
  date_sub(YEAR, 2, r.event_timestamp) AS date_in_past,
  timestamp_add(DAY, 2, r.event_timestamp) AS timestamp_in_future,
  timestamp_sub(DAY, 2, r.event_timestamp) AS timestamp_in_past,
  now() AS time_now
FROM raw_time_series AS r
```