Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks Runtime 18.1 und höher
Berechnet den elementweisen Mittelwert von Vektoren in einem Aggregat. Gibt einen Vektor zurück, bei dem jedes Element das arithmetische Mittel der entsprechenden Elemente über alle Eingabevektoren hinweg ist.
Syntax
vector_avg(vectors) [FILTER ( WHERE cond ) ]
Argumente
-
Vektoren: Eine Spalte mit
ARRAY<FLOAT>Ausdrücken, die Vektoren darstellen. Alle Vektoren müssen dieselbe Dimension aufweisen. - cond: Ein optionaler boolescher Ausdruck, der die zeilen filtert, die für die Aggregation verwendet werden.
Rückkehr
Ein ARRAY<FLOAT> Wert mit derselben Dimension wie die Eingabevektoren. Jedes Element im Ergebnis ist der Mittelwert der entsprechenden Elemente über alle Eingabevektoren hinweg.
NULL Werte und NichtvektorenNULL , die ein NULL Element enthalten, werden in der Aggregation ignoriert. Gibt zurück NULL , wenn alle Werte in der Gruppe ungültig sind. Gibt ein leeres Array [] zurück, wenn alle Eingabevektoren leer sind.
Hinweise
- Nur
ARRAY<FLOAT>wird unterstützt; andere Typen wieARRAY<DOUBLE>z. B. oderARRAY<DECIMAL>Auslösen eines Fehlers. - Alle Eingabevektoren müssen dieselbe Dimension aufweisen; andernfalls löst die Funktion VECTOR_DIMENSION_MISMATCH aus.
- Ein Nichtvektor
NULL, der einNULLElement enthält, wird alsNULLbehandelt.
Fehlerbedingungen
Beispiele
-- Element-wise average per category (with GROUP BY)
> SELECT category, vector_avg(embedding) AS centroid
FROM vector_data
GROUP BY category
ORDER BY category;
category: A, centroid: [3.0, 6.0, 9.0]
category: B, centroid: [2.0, 4.0, 6.0]
-- Scalar aggregation (no GROUP BY)
> SELECT vector_avg(embedding) AS overall_centroid FROM vector_data;
overall_centroid: [2.5, 5.0, 7.5]