

# Funciones en Amazon Athena
<a name="functions"></a>

Para obtener información acerca de los cambios en las funciones entre las versiones del motor de Athena, consulte [Control de versiones del motor Athena](engine-versions.md). Para obtener una lista de las zonas horarias que se pueden utilizar con el operador `AT TIME ZONE`, consulte [Uso de zonas horarias admitidas](athena-supported-time-zones.md).

**Topics**
+ [Versión 3 del motor Athena](functions-env3.md)

# Funciones de la versión 3 del motor Athena
<a name="functions-env3"></a>

Las funciones de la versión 3 del motor Athena se basan en Trino. Para obtener información sobre las funciones, los operadores y las expresiones de Trino, consulte [Funciones y operadores](https://trino.io/docs/current/functions.html) y las siguientes subsecciones de la documentación de Trino.
+  [Aggregate](https://trino.io/docs/current/functions/aggregate.html) 
+  [Array](https://trino.io/docs/current/functions/array.html) (Matriz) 
+  [Binario](https://trino.io/docs/current/functions/binary.html) 
+  [Bitwise](https://trino.io/docs/current/functions/bitwise.html) (Bit a bit) 
+  [Color](https://trino.io/docs/current/functions/color.html) 
+  [Comparación](https://trino.io/docs/current/functions/comparison.html) 
+  [Condicional](https://trino.io/docs/current/functions/conditional.html) 
+  [Conversion](https://trino.io/docs/current/functions/conversion.html) (Conversión) 
+  [Fecha y hora](https://trino.io/docs/current/functions/datetime.html) 
+  [Decimal](https://trino.io/docs/current/functions/decimal.html) (Decimal) 
+  [Geospatial](https://trino.io/docs/current/functions/geospatial.html) (Geoespacial) 
+  [HyperLogLog](https://trino.io/docs/current/functions/hyperloglog.html) 
+  [IP Address](https://trino.io/docs/current/functions/ipaddress.html) (Dirección IP) 
+  [JSON](https://trino.io/docs/current/functions/json.html) 
+  [Lambda](https://trino.io/docs/current/functions/lambda.html) 
+  [Logical](https://trino.io/docs/current/functions/logical.html) (Lógica) 
+  [Machine learning](https://trino.io/docs/current/functions/ml.html) 
+  [Map](https://trino.io/docs/current/functions/map.html) 
+  [Math (Matemática)](https://trino.io/docs/current/functions/math.html) 
+  [Quantile digest](https://trino.io/docs/current/functions/qdigest.html) (Resumen de cuantiles) 
+  [Expresión regular](https://trino.io/docs/current/functions/regexp.html) 
+  [Session](https://trino.io/docs/current/functions/session.html) (Sesión) 
+  [Set Digest](https://trino.io/docs/current/functions/setdigest.html) (Establecer resumen) 
+  [Cadena](https://trino.io/docs/current/functions/string.html) 
+  [Tabla](https://trino.io/docs/current/functions/table.html) 
+  [Teradata](https://trino.io/docs/current/functions/teradata.html) 
+  [T-Digest](https://trino.io/docs/current/functions/tdigest.html) 
+  [URL](https://trino.io/docs/current/functions/url.html) 
+  [UUID](https://trino.io/docs/current/functions/uuid.html) (Identificador único universal) 
+  [Window](https://trino.io/docs/current/functions/window.html) 

## función invoker\$1principal()
<a name="functions-env3-invoker-principal"></a>

La función `invoker_principal` es exclusiva de la versión 3 del motor de Athena y no se encuentra en Trino.

Devuelve `VARCHAR` que contiene el ARN de la entidad principal (rol de IAM o identidad del Centro de Identidades) que ejecutó la consulta que llama a la función. Por ejemplo, si el invocador de la consulta utiliza los permisos de un rol IAM para ejecutar la consulta, la función devuelve el ARN del rol de IAM. El rol que ejecuta la consulta debe permitir la acción `LakeFormation:GetDataLakePrincipal`. 

### Uso
<a name="functions-invoker-principal-usage"></a>

```
SELECT invoker_principal()
```

En la tabla que figura a continuación aparece un ejemplo de resultado.


****  

| \$1 | \$1col0 | 
| --- | --- | 
| 1 | arn:aws:iam::111122223333:role/Admin | 