

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Fonctions de constructeur
<a name="sql-functions-constructor"></a>

Une fonction de constructeur SQL est une fonction utilisée pour créer de nouvelles structures de données, telles que des tableaux ou des cartes.

 Ils prennent des valeurs d'entrée et renvoient un nouvel objet de structure de données. Les fonctions de constructeur sont généralement nommées d'après le type de données qu'elles créent, tel que ARRAY ou MAP.

Les fonctions de constructeur sont différentes des fonctions scalaires ou des fonctions d'agrégation, qui opèrent sur des données existantes et renvoient une valeur unique. Les fonctions du constructeur sont utilisées pour créer de nouvelles structures de données qui peuvent ensuite être utilisées dans le cadre d'un traitement ou d'une analyse de données ultérieurs.

AWS Clean Rooms prend en charge les fonctions de constructeur suivantes :

**Topics**
+ [Fonction constructeur MAP](map_function.md)
+ [Fonction constructeur NAMED\$1STRUCT](named-struct_function.md)
+ [Fonction constructeur STRUCT](struct_function.md)

# Fonction constructeur MAP
<a name="map_function"></a>

La fonction constructeur MAP crée une carte avec les paires clé/valeur données.

Les fonctions de constructeur telles que MAP sont utiles lorsque vous devez créer de nouvelles structures de données par programmation dans vos requêtes SQL. Ils vous permettent de créer des structures de données complexes qui peuvent être utilisées dans le cadre d'un traitement ou d'une analyse de données ultérieurs. 

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

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

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

 *clé0*   
Expression de n'importe quel type comparable. Toutes les *clés 0* doivent partager le type le moins commun.

 *valeur0*   
Expression de n'importe quel type. Toutes les *valeurs N* doivent partager le type le moins commun.

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

*La fonction MAP renvoie une carte dont les touches sont saisies comme le type le moins courant de *clé0* et les valeurs saisies comme le type le moins courant de valeur0.*

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

L'exemple suivant crée une nouvelle carte avec deux paires clé-valeur : La clé `1.0` est associée à la valeur. `'2'` La clé `3.0` est associée à la valeur`'4'`. La carte obtenue est ensuite renvoyée en tant que sortie de l'instruction SQL. 

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

# Fonction constructeur NAMED\$1STRUCT
<a name="named-struct_function"></a>

La fonction constructeur NAMED\$1STRUCT crée une structure avec les noms et valeurs de champs donnés.

Les fonctions de constructeur telles que NAMED\$1STRUCT sont utiles lorsque vous devez créer de nouvelles structures de données par programmation dans vos requêtes SQL. Ils vous permettent de créer des structures de données complexes, telles que des structures ou des enregistrements, qui peuvent être utilisées dans le cadre d'un traitement ou d'une analyse de données ultérieurs.

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

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

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

 *nom1*   
Un champ de dénomination littéral STRING 1.

 *val1*   
Expression de n'importe quel type spécifiant la valeur du champ 1.

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

*La fonction NAMED\$1STRUCT renvoie une structure dont le champ 1 correspond au type de val1.* 

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

L'exemple suivant crée une nouvelle structure avec trois champs nommés : La valeur `"a"` `1` est attribuée au champ. La valeur `"b"` est affectée au champ `2.` Le champ `"c"` reçoit la valeur`3`. La structure résultante est ensuite renvoyée en tant que sortie de l'instruction SQL. 

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

# Fonction constructeur STRUCT
<a name="struct_function"></a>

La fonction constructeur STRUCT crée une structure avec les valeurs de champ données.

Les fonctions de constructeur telles que STRUCT sont utiles lorsque vous devez créer de nouvelles structures de données par programmation dans vos requêtes SQL. Ils vous permettent de créer des structures de données complexes, telles que des structures ou des enregistrements, qui peuvent être utilisées dans le cadre d'un traitement ou d'une analyse de données ultérieurs.

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

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

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

 *colonel 1*   
Nom de la colonne ou n’importe quelle expression valide.

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

*La fonction STRUCT renvoie une structure dont *field1 correspond au type de expr1*.*

Si les arguments sont des références nommées, les noms sont utilisés pour nommer le champ. Sinon, les champs sont nommés *ColN*, où N est la position du champ dans la structure.

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

L'exemple suivant crée une nouvelle structure avec trois champs : La valeur 1 est attribuée au premier champ. La valeur 2 est attribuée au second champ. La valeur 3 est attribuée au troisième champ. Par défaut, les champs de la structure résultante sont nommés `col1` `col2``col3`, et en fonction de leur position dans la liste d'arguments. La structure résultante est ensuite renvoyée en tant que sortie de l'instruction SQL.

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