

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Aggregations-Funktionen mit Arrays verwenden
<a name="arrays-and-aggregation"></a>
+ Fügen Sie mit `SUM` Werte zu einem Array hinzu, wie im folgenden Beispiel dargestellt.
+ Aggregieren Sie mit `array_agg` mehrere Zeilen in einem Array. Weitere Informationen finden Sie unter [Erstellen von Arrays aus Unterabfragen](creating-arrays-from-subqueries.md).

**Anmerkung**  
`ORDER BY` wird für Aggregationsfunktionen unterstützt, die in Athena Engine Version 2 beginnen.

```
WITH
dataset AS (
  SELECT ARRAY
  [
    ARRAY[1,2,3,4],
    ARRAY[5,6,7,8],
    ARRAY[9,0]
  ] AS items
),
item AS (
  SELECT i AS array_items
  FROM dataset, UNNEST(items) AS t(i)
)
SELECT array_items, sum(val) AS total
FROM item, UNNEST(array_items) AS t(val)
GROUP BY array_items;
```

In der letzten `SELECT`-Anweisung können Sie statt `sum()` und `UNNEST` zu verwenden, die Verarbeitungszeit und die Datenübertragung, wie im folgenden Beispiel, mit `reduce()` verkürzen.

```
WITH
dataset AS (
  SELECT ARRAY
  [
    ARRAY[1,2,3,4],
    ARRAY[5,6,7,8],
    ARRAY[9,0]
  ] AS items
),
item AS (
  SELECT i AS array_items
  FROM dataset, UNNEST(items) AS t(i)
)
SELECT array_items, reduce(array_items, 0 , (s, x) -> s + x, s -> s) AS total
FROM item;
```

Jede Abfrage gibt die folgenden Ergebnisse zurück. Die Reihenfolge der zurückgegebenen Ergebnisse ist nicht gewährleistet.

```
+----------------------+
| array_items  | total |
+----------------------+
| [1, 2, 3, 4] | 10    |
| [5, 6, 7, 8] | 26    |
| [9, 0]       | 9     |
+----------------------+
```