Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:
Databricks Runtime 18.1 och senare
Beräknar elementmässigt medelvärde av vektorer i en aggregering. Returnerar en vektor där varje element är det aritmetiska medelvärdet för motsvarande element i alla indatavektorer.
Syntax
vector_avg(vectors) [FILTER ( WHERE cond ) ]
Arguments
-
vektorer: En kolumn med
ARRAY<FLOAT>uttryck som representerar vektorer. Alla vektorer måste ha samma dimension. - cond: Ett valfritt booleskt uttryck som filtrerar de rader som används för aggregering.
Retur
Ett ARRAY<FLOAT> värde med samma dimension som indatavektorerna. Varje element i resultatet är medelvärdet av motsvarande element i alla indatavektorer.
NULL värden och icke-vektorerNULL som innehåller ett NULL element ignoreras i aggregeringen. Returnerar NULL om alla värden i gruppen är ogiltiga. Returnerar en tom matris [] om alla indatavektorer är tomma.
Notes
- Endast
ARRAY<FLOAT>stöds, andra typer, till exempelARRAY<DOUBLE>ellerARRAY<DECIMAL>skapar ett fel. - Alla indatavektorer måste ha samma dimension. annars höjer funktionen VECTOR_DIMENSION_MISMATCH.
- En icke-vektor
NULLsom innehåller ettNULLelement behandlas somNULL.
Feltillstånd
Exempel
-- 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]