

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 del constructor
<a name="sql-functions-constructor"></a>

Una función constructora de SQL es una función que se utiliza para crear nuevas estructuras de datos, como matrices o mapas.

 Toman algunos valores de entrada y devuelven un nuevo objeto de estructura de datos. Las funciones constructoras suelen tener el nombre del tipo de datos que crean, como ARRAY o MAP.

Las funciones constructoras son diferentes de las funciones escalares o agregadas, que funcionan con los datos existentes y devuelven un único valor. Las funciones constructoras se utilizan para crear nuevas estructuras de datos que luego se pueden utilizar en el procesamiento o análisis posterior de los datos.

AWS Clean Rooms admite las siguientes funciones constructoras:

**Topics**
+ [función constructora MAP](map_function.md)
+ [Función constructora NAMED\$1STRUCT](named-struct_function.md)
+ [Función constructora STRUCT](struct_function.md)

# función constructora MAP
<a name="map_function"></a>

La función constructora MAP crea un mapa con los pares clave/valor dados.

Las funciones constructoras como MAP son útiles cuando necesita crear nuevas estructuras de datos mediante programación dentro de sus consultas SQL. Permiten crear estructuras de datos complejas que se pueden utilizar en posteriores procesamientos o análisis de datos. 

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

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

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

 *clave0*   
Una expresión de cualquier tipo comparable. Todas las *key0* deben compartir un tipo mínimo común.

 *valor0*   
Una expresión de cualquier tipo. Todos los *valores EN* deben compartir un tipo mínimo común.

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

*La función MAP devuelve un MAPA con las claves escritas como el tipo menos común de *clave0* y los valores escritos como el tipo menos común de valor0.*

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

El siguiente ejemplo crea un mapa nuevo con dos pares clave-valor: la clave está asociada al valor. `1.0` `'2'` La clave `3.0` está asociada al valor. `'4'` A continuación, el mapa resultante se devuelve como salida de la sentencia SQL. 

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

# Función constructora NAMED\$1STRUCT
<a name="named-struct_function"></a>

La función constructora NAMED\$1STRUCT crea una estructura con los nombres y valores de campo dados.

Las funciones constructoras como NAMED\$1STRUCT son útiles cuando se necesita crear nuevas estructuras de datos mediante programación en las consultas SQL. Permiten crear estructuras de datos complejas, como estructuras o registros, que se pueden utilizar en el procesamiento o análisis posterior de los datos.

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

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

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

 *nombre1*   
Un campo de nomenclatura literal STRING 1.

 *val1*   
Expresión de cualquier tipo que especifique el valor del campo 1.

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

*La función NAMED\$1STRUCT devuelve una estructura cuyo campo 1 coincide con el tipo de val1.* 

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

En el siguiente ejemplo, se crea una nueva estructura con tres campos con nombre: Se asigna el valor al campo. `"a"` `1` `"b"`Se asigna el valor al campo. `"c"` Se le asigna `2.` el valor `3` al campo. A continuación, la estructura resultante se devuelve como salida de la sentencia SQL. 

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

# Función constructora STRUCT
<a name="struct_function"></a>

La función constructora STRUCT crea una estructura con los valores de campo dados.

Las funciones constructoras como STRUCT son útiles cuando se necesita crear nuevas estructuras de datos mediante programación dentro de las consultas SQL. Permiten crear estructuras de datos complejas, como estructuras o registros, que se pueden utilizar en el procesamiento o análisis posterior de los datos.

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

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

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

 *col. 1*   
Un nombre de columna o cualquier expresión válida.

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

*La función STRUCT devuelve una estructura cuyo *campo1 coincide con el tipo de expr1*.*

Si los argumentos son referencias denominadas, los nombres se utilizan para nombrar el campo. De lo contrario, los campos se *denominan COLn*, donde N es la posición del campo en la estructura.

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

El siguiente ejemplo crea una nueva estructura con tres campos: al primer campo se le asigna el valor 1. Al segundo campo se le asigna el valor 2. Al tercer campo se le asigna el valor 3. De forma predeterminada, los campos de la estructura resultante se denominan`col1`, y `col2``col3`, en función de su posición en la lista de argumentos. A continuación, la estructura resultante se devuelve como salida de la sentencia SQL.

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