Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
Databricks Runtime 18.1 et versions ultérieures
Calcule la distance euclide (L2) entre deux vecteurs.
Syntaxe
vector_l2_distance(vector1, vector2)
Arguments
-
vector1 :
ARRAY<FLOAT>expression représentant le premier vecteur. -
vector2 :
ARRAY<FLOAT>expression représentant le deuxième vecteur.
Retours
Valeur FLOAT représentant la distance euclide entre les deux vecteurs. Le résultat est non négatif, où 0,0 indique des vecteurs identiques.
Retourne la valeur 0.0 pour les vecteurs vides. Retourne NULL si l’entrée est NULL ou contient NULL.
Remarques
- Seul
ARRAY<FLOAT>est pris en charge ; d’autres types tels queARRAY<DOUBLE>ouARRAY<DECIMAL>déclenchent une erreur. - Les deux vecteurs doivent avoir la même dimension ; sinon, la fonction déclenche VECTOR_DIMENSION_MISMATCH.
- Les valeurs inférieures indiquent une plus grande similarité (vecteurs plus proches) ; également connu sous le nom de distance euclide.
Conditions de l’erreur
Exemples
-- Basic L2 distance
> SELECT vector_l2_distance(array(1.0f, 2.0f, 3.0f), array(4.0f, 5.0f, 6.0f));
5.196152422706632
-- Distance between identical vectors
> SELECT vector_l2_distance(array(1.0f, 2.0f), array(1.0f, 2.0f));
0.0
-- Classic 3-4-5 triangle
> SELECT vector_l2_distance(array(0.0f, 0.0f), array(3.0f, 4.0f));
5.0