

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Funções do construtor
<a name="sql-functions-constructor"></a>

Uma função construtora SQL é uma função usada para criar novas estruturas de dados, como matrizes ou mapas.

 Eles pegam alguns valores de entrada e retornam um novo objeto de estrutura de dados. As funções do construtor geralmente são nomeadas de acordo com o tipo de dados que elas criam, como ARRAY ou MAP.

As funções construtoras são diferentes das funções escalares ou agregadas, que operam com dados existentes e retornam um único valor. As funções do construtor são usadas para criar novas estruturas de dados que podem ser usadas em processamento ou análise de dados adicionais.

AWS Clean Rooms suporta as seguintes funções de construtor:

**Topics**
+ [Função construtora MAP](map_function.md)
+ [Função construtora NAMED\$1STRUCT](named-struct_function.md)
+ [Função construtora STRUCT](struct_function.md)

# Função construtora MAP
<a name="map_function"></a>

A função construtora MAP cria um mapa com os pares chave/valor fornecidos.

Funções de construtor, como MAP, são úteis quando você precisa criar novas estruturas de dados programaticamente em suas consultas SQL. Eles permitem que você crie estruturas de dados complexas que podem ser usadas em processamento ou análise de dados adicionais. 

## Sintaxe
<a name="map_function-syntax"></a>

```
map(key0, value0, key1, value1, ...)
```

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

 *chave 0*   
Uma expressão de qualquer tipo comparável. Todas as *key0* devem compartilhar um tipo menos comum.

 *valor0*   
Uma expressão de qualquer tipo. Todos os *ValueN* devem compartilhar um tipo menos comum.

## Retornos
<a name="map_function-returns"></a>

*A função MAP retorna um MAP com chaves digitadas como o tipo menos comum de *chave0* e valores digitados como o tipo menos comum de valor0.*

## Exemplos
<a name="map_function-examples"></a>

O exemplo a seguir cria um novo mapa com dois pares de valores-chave: A chave `1.0` está associada ao valor. `'2'` A chave `3.0` está associada ao valor`'4'`. O mapa resultante é então retornado como a saída da instrução SQL. 

```
SELECT map(1.0, '2', 3.0, '4');
 {1.0:"2",3.0:"4"}
```

# Função construtora NAMED\$1STRUCT
<a name="named-struct_function"></a>

A função do construtor NAMED\$1STRUCT cria uma estrutura com os nomes e valores de campo fornecidos.

Funções de construtor como NAMED\$1STRUCT são úteis quando você precisa criar novas estruturas de dados programaticamente em suas consultas SQL. Eles permitem que você crie estruturas de dados complexas, como estruturas ou registros, que podem ser usadas em processamento ou análise de dados adicionais.

## Sintaxe
<a name="named-struct_function-syntax"></a>

```
named_struct(name1, val1, name2, val2, ...)
```

## Argumentos
<a name="snamed-truct_function-arguments"></a>

 *nome1*   
Um campo de nomenclatura literal STRING 1.

 *val1*   
Uma expressão de qualquer tipo especificando o valor do campo 1.

## Retornos
<a name="named-struct_function-returns"></a>

*A função NAMED\$1STRUCT retorna uma estrutura com o campo 1 correspondente ao tipo de val1.* 

## Exemplos
<a name="named-struct_function-examples"></a>

O exemplo a seguir cria uma nova estrutura com três campos nomeados: O valor `"a"` `1` é atribuído ao campo. O campo `"b"` recebe o valor `2.` O campo `"c"` recebe o valor`3`. A estrutura resultante é então retornada como saída da instrução SQL. 

```
SELECT named_struct("a", 1, "b", 2, "c", 3);
 {"a":1,"b":2,"c":3}
```

# Função construtora STRUCT
<a name="struct_function"></a>

A função construtora STRUCT cria uma estrutura com os valores de campo fornecidos.

Funções de construtor como STRUCT são úteis quando você precisa criar novas estruturas de dados programaticamente em suas consultas SQL. Eles permitem que você crie estruturas de dados complexas, como estruturas ou registros, que podem ser usadas em processamento ou análise de dados adicionais.

## Sintaxe
<a name="struct_function-syntax"></a>

```
struct(col1, col2, col3, ...)
```

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

 *col1*   
Um nome de coluna ou qualquer expressão válida.

## Retornos
<a name="struct_function-returns"></a>

*A função STRUCT retorna uma estrutura com *field1 correspondente ao tipo de expr1*.*

Se os argumentos forem referências nomeadas, os nomes serão usados para nomear o campo. Caso contrário, os campos são *denominados* colN, onde N é a posição do campo na estrutura.

## Exemplos
<a name="struct_function-examples"></a>

O exemplo a seguir cria uma nova estrutura com três campos: O primeiro campo recebe o valor 1. O segundo campo recebe o valor 2. O terceiro campo recebe o valor 3. Por padrão, os campos na estrutura resultante são nomeados`col1`,, e `col2``col3`, com base em sua posição na lista de argumentos. A estrutura resultante é então retornada como saída da instrução SQL.

```
SELECT struct(1, 2, 3);
 {"col1":1,"col2":2,"col3":3}
```