JARO_WINKLER (Lakehouse v1)
Calcule la distance de Jaro-Winkler entre deux chaînes. Elle sert couramment à mesurer la similarité entre des chaînes, avec des valeurs allant de 0.0 (totalement différentes) à 1.0 (chaînes identiques).
Syntaxe Analyze
Section intitulée « Syntaxe Analyze »func.jaro_winkler(<string1>, <string2>)Exemples Analyze
Section intitulée « Exemples Analyze »func.jaro_winkler('databend', 'Databend')┌───────────────────────────────────────────┐│ func.jaro_winkler('databend', 'Databend') │├───────────────────────────────────────────┤│ 0.9166666666666666 │└───────────────────────────────────────────┘Syntaxe SQL
Section intitulée « Syntaxe SQL »JARO_WINKLER(<string1>, <string2>)Exemples SQL
Section intitulée « Exemples SQL »La fonction JARO_WINKLER renvoie une valeur FLOAT64 représentant la similarité entre les deux chaînes d’entrée. La valeur renvoyée obéit aux règles suivantes :
-
Plage de similarité : le résultat va de 0.0 (totalement différentes) à 1.0 (identiques).
SELECT JARO_WINKLER('databend', 'Databend') AS similarity;┌────────────────────┐│ similarity │├────────────────────┤│ 0.9166666666666666 │└────────────────────┘SELECT JARO_WINKLER('databend', 'database') AS similarity;┌────────────┐│ similarity │├────────────┤│ 0.9 │└────────────┘ -
Gestion de NULL : si string1 ou string2 est NULL, le résultat est NULL.
SELECT JARO_WINKLER('databend', NULL) AS similarity;┌────────────┐│ similarity │├────────────┤│ NULL │└────────────┘ -
Chaînes vides :
- La comparaison de deux chaînes vides renvoie 1.0.
SELECT JARO_WINKLER('', '') AS similarity;┌────────────┐│ similarity │├────────────┤│ 1 │└────────────┘- La comparaison d’une chaîne vide avec une chaîne non vide renvoie 0.0.
SELECT JARO_WINKLER('databend', '') AS similarity;┌────────────┐│ similarity │├────────────┤│ 0 │└────────────┘