Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks Runtime 18.1 и выше
Вычисляет сумму векторов с элементом в агрегате. Возвращает вектор, в котором каждый элемент является суммой соответствующих элементов во всех входных векторах.
Синтаксис
vector_sum(vectors) [FILTER ( WHERE cond ) ]
Аргументы
-
vectors: столбец выражений
ARRAY<FLOAT>, представляющих векторы. Все векторы должны иметь одинаковое измерение. - cond: необязательное логическое выражение, фильтрующее строки, используемые для агрегирования.
Возвраты
ARRAY<FLOAT> Значение с тем же измерением, что и входные векторы. Каждый элемент в результате — это сумма соответствующих элементов во всех входных векторах.
NULL значения иNULL не векторы, NULL содержащие элемент, игнорируются в агрегировании. Возвращает значение NULL , если все значения в группе недопустимы (NULL или неNULL векторы с NULL элементами). Возвращает пустой массив [] , если все входные векторы пусты.
Примечания
- Поддерживается только
ARRAY<FLOAT>другие типы, напримерARRAY<DOUBLE>илиARRAY<DECIMAL>возникают ошибки. - Все входные векторы должны иметь одинаковое измерение; в противном случае функция вызывает VECTOR_DIMENSION_MISMATCH.
- Не вектор
NULL, содержащийNULLэлемент, обрабатывается какNULL.
Условия ошибок
Примеры
-- Element-wise sum per category (with GROUP BY)
> SELECT category, vector_sum(embedding) AS sum_vector
FROM vector_data
GROUP BY category
ORDER BY category;
category: A, sum_vector: [5.0, 7.0, 9.0]
category: B, sum_vector: [5.0, 3.0, 5.0]
-- Scalar aggregation (without GROUP BY)
> SELECT vector_sum(embedding) AS total_sum FROM vector_data;
total_sum: [10.0, 10.0, 14.0]