

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Utilizzo delle matrici per creare mappe
<a name="arrays-create-maps"></a>

Le mappe sono coppie chiave-valore formate da tipi di dati disponibili in Athena. Per creare mappe, utilizza l'operatore `MAP` e passalo in due matrici: la prima è costituita dai nomi delle colonne (chiave) e la seconda dai valori. Tutti i valori nelle matrici devono essere dello stesso tipo. Se uno qualsiasi degli elementi nelle matrici di valori deve essere di tipo diverso, è possibile convertirlo più tardi.

## Esempi
<a name="examples"></a>

In quest'esempio viene selezionato un utente da un set di dati. e si utilizza l'operatore `MAP`, facendolo poi passare da due matrici. La prima matrice include i valori per i nomi di colonna, ad esempio "primo", "ultimo" ed "età". La seconda matrice è formata da valori per ciascuna colonna, ad esempio "Bob", "Smith", "35".

```
WITH dataset AS (
  SELECT MAP(
    ARRAY['first', 'last', 'age'],
    ARRAY['Bob', 'Smith', '35']
  ) AS user
)
SELECT user FROM dataset
```

Questa query restituisce:

```
+---------------------------------+
| user                            |
+---------------------------------+
| {last=Smith, first=Bob, age=35} |
+---------------------------------+
```

È possibile recuperare i valori `Map` selezionando il nome di campo seguito da `[key_name]`, come in questo esempio:

```
WITH dataset AS (
 SELECT MAP(
   ARRAY['first', 'last', 'age'],
   ARRAY['Bob', 'Smith', '35']
 ) AS user
)
SELECT user['first'] AS first_name FROM dataset
```

Questa query restituisce:

```
+------------+
| first_name |
+------------+
| Bob        |
+------------+
```