

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用陣列建立映射
<a name="arrays-create-maps"></a>

映射是由 Athena 中可用的資料類型組成的鍵值組。若要建立映射，請使用 `MAP` 運算子並傳入兩個陣列：第一個是欄 (金鑰) 名稱，第二個是值。陣列的所有值必須是相同類型。如果任何映射值陣列元素必須是不同類型，您稍後可以轉換它們。

## 範例
<a name="examples"></a>

此範例從資料集選取使用者。它使用 `MAP` 運算子並傳入兩個陣列。第一個陣列包含欄名稱的值，例如 "first"、"last" 和 "age"。第二個陣列包含每個欄的值，例如 "Bob"、"Smith"、"35"。

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

此查詢會傳回：

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

您可以選取欄位名稱，後面接著 `[key_name]`，以擷取 `Map` 值，如以下範例所示：

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

此查詢會傳回：

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