Aracılığıyla paylaş


vector_sum toplama işlevi

Şunun için geçerlidir:evet olarak işaretlendi Databricks Runtime 18.1 ve üzerini denetleyin

Bir toplamadaki vektörlerin öğeye göre toplamını hesaplar. Her öğenin tüm giriş vektörlerinde karşılık gelen öğelerin toplamı olduğu bir vektör döndürür.

Sözdizimi

vector_sum(vectors) [FILTER ( WHERE cond ) ]

Argümanlar

  • vectors: Vektörleri temsil eden bir ifade sütunu ARRAY<FLOAT> . Tüm vektörler aynı boyuta sahip olmalıdır.
  • cond: Toplama için kullanılan satırları filtreleyerek isteğe bağlı bir boole ifadesi.

İadeler

ARRAY<FLOAT> Giriş vektörleriyle aynı boyuta sahip bir değer. Sonuçtaki her öğe, tüm giriş vektörlerinde karşılık gelen öğelerin toplamıdır.

NULLdeğerler ve öğe NULL içeren vektör olmayanNULL değerler toplamada yoksayılır. Gruptaki tüm değerlerin geçersizNULL (veya öğe içeren NULL vektör olmayanNULL) olup olmadığını döndürürNULL. Tüm giriş vektörleri boşsa boş bir dizi [] döndürür.

Notlar

  • Yalnızca ARRAY<FLOAT> desteklenir; veya gibi ARRAY<DOUBLE>ARRAY<DECIMAL> diğer türler hata oluşturur.
  • Tüm giriş vektörleri aynı boyuta sahip olmalıdır; aksi takdirde işlev VECTOR_DIMENSION_MISMATCH yükseltir.
  • Öğe içeren vektör olmayanNULL bir NULL öğe olarak NULLdeğerlendirilir.

Hata koşulları

Örnekler

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