다음을 통해 공유


vector_avg 집계 함수

적용 대상:yes Databricks Runtime 18.1 이상으로 표시된 확인

집계에서 요소별 벡터 평균을 계산합니다. 각 요소가 모든 입력 벡터에서 해당 요소의 산술 평균인 벡터를 반환합니다.

문법

vector_avg(vectors) [FILTER ( WHERE cond ) ]

Arguments

  • vectors: 벡터를 나타내는 식의 ARRAY<FLOAT> 열입니다. 모든 벡터는 동일한 차원을 가져야 합니다.
  • cond: 집계에 사용되는 행을 필터링하는 선택적 부울 식입니다.

Returns

ARRAY<FLOAT> 입력 벡터와 동일한 차원의 값입니다. 결과의 각 요소는 모든 입력 벡터에서 해당 요소의 평균입니다.

NULL값 및 요소를 포함하는 NULLNULL 벡터는 집계에서 무시됩니다. NULL 그룹의 모든 값이 잘못된지 반환합니다. 모든 입력 벡터가 비어 있으면 빈 배열 [] 을 반환합니다.

Notes

  • ARRAY<FLOAT> 지원됩니다. 다른 형식(예: ARRAY<DOUBLE> 오류 발생) ARRAY<DECIMAL> .
  • 모든 입력 벡터의 차원은 동일해야 합니다. 그렇지 않으면 함수가 VECTOR_DIMENSION_MISMATCH 발생합니다.
  • 요소를 포함하는 NULL 벡터가 아닌NULL 벡터는 .로 NULL처리됩니다.

오류 조건

예제

-- 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]