Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Consultar com uso da sintaxe de consulta de UDFs

Modo de foco

Nesta página

Consultar com uso da sintaxe de consulta de UDFs - Amazon Athena

A cláusula USING EXTERNAL FUNCTION especifica uma UDF ou várias UDFs que podem ser referenciadas por uma instrução SELECT subsequente na consulta. Você precisa do nome do método da UDF e do nome da função do Lambda que hospeda a UDF. No lugar do nome da função do Lambda, você pode usar o ARN do Lambda. Em cenários entre contas, o ARN do Lambda é obrigatório.

Resumo

USING EXTERNAL FUNCTION UDF_name(variable1 data_type[, variable2 data_type][,...]) RETURNS data_type LAMBDA 'lambda_function_name_or_ARN' [, EXTERNAL FUNCTION UDF_name2(variable1 data_type[, variable2 data_type][,...]) RETURNS data_type LAMBDA 'lambda_function_name_or_ARN'[,...]] SELECT [...] UDF_name(expression) [, UDF_name2(expression)] [...]

Parâmetros

USING EXTERNAL FUNCTION UDF_name(variable1 data_type[, variable2 data_type][,...])

UDF_name especifica o nome da UDF, que deve corresponder a um método Java com a função do Lambda referenciada. Cada variable data_type especifica uma variável nomeada e o tipo de dados correspondente que a UDF aceita como entrada. O data_type deve ser um dos tipos de dados do Athena permitidos listados na tabela a seguir e mapear para o tipo de dados Java correspondente.

Tipo de dados do Athena Tipo de dados Java

TIMESTAMP

java.time.LocalDateTime (UTC)

DATA

java.time.LocalDate (UTC)

TINYINT

java.lang.Byte

SMALLINT

java.lang.Short

REAL

java.lang.Float

DOUBLE

java.lang.Double

DECIMAL (veja a nota RETURNS)

java.math.BigDecimal

BIGINT

java.lang.Long

INTEGER

java.lang.Int

VARCHAR

java.lang.String

VARBINARY

byte[]

BOOLEAN

java.lang.Boolean

ARRAY

java.util.List

ROW

java.util.Map<String, Object>

RETURNS tipo_dados

O data_type especifica o tipo de dados SQL que a UDF retorna como saída. Os tipos de dados do Athena listados na tabela acima são permitidos. Para o tipo de dados DECIMAL, use a sintaxe RETURNS DECIMAL(precision, scale) em que precision e scale são inteiros.

LAMBDA 'lambda_function'

lambda_function especifica o nome da função do Lambda que será invocada ao executar a UDF.

SELECT [...] UDF_name(expression) [...]

A consulta SELECT que passa os valores para a UDF e retorna um resultado. UDF_name especifica a UDF que será usada, seguida de uma expressão que é avaliado para passar os valores. Os valores que são passados e retornados devem coincidir com os tipos de dados correspondentes especificados para a UDF na cláusula USING EXTERNAL FUNCTION.

Exemplos

Para ver exemplos de consultas baseadas no código AthenaUDFHandler.java no GitHub, consulte a página Amazon Athena UDF Connector (Conector de UDF do Amazon Athena).

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.