Catégories :

Fonctions de chaîne et fonctions binaires (Correspondance/Comparaison)

JAROWINKLER_SIMILARITY

Calcule la similarité de Jaro-Winkler entre deux chaînes en entrée. La fonction renvoie un nombre entier entre 0 et 100, où 0 indique une absence de similarité et 100 une correspondance exacte.

Note

  • Le calcul de la similarité est n’est pas sensible à la casse.

  • Cependant, les calculs sont sensibles à tous les caractères de formatage, y compris les espaces blancs.

  • Le facteur d’échelle par défaut de de 0.1 est utilisé pour le calcul.

Syntaxe

JAROWINKLER_SIMILARITY( <string_expr1> , <string_expr2> )

Arguments

Obligatoire :

string_expr1, . string_expr2

Les chaînes d’entrée.

Notes sur l’utilisation

  • Lorsque la fonction compare des chaînes courtes, le temps d’exécution est proportionnel au produit des longueurs des chaînes d’entrée.

  • Lorsque la fonction compare des chaînes longues, le temps d’exécution est proportionnel à la longueur de la chaîne la plus longue.

Détails du classement

No impact. In languages where the alphabet contains digraphs or trigraphs (such as « Dz » and « Dzs » in Hungarian), each character in each digraph and trigraph is treated as an independent character, not as part of a single multi-character letter.

Le résultat repose uniquement sur les caractères des chaînes, et non sur les spécifications de classement des chaînes.

Exemples

L’exemple suivant calcule la similarité entre les chaînes des colonnes s et t de la table ed.

SELECT s, t, JAROWINKLER_SIMILARITY(s, t), JAROWINKLER_SIMILARITY(t, s) FROM ed;

----------------+-----------------+------------------------------+------------------------------+
      S         |        T        | JAROWINKLER_SIMILARITY(S, T) | JAROWINKLER_SIMILARITY(T, S) |
----------------+-----------------+------------------------------+------------------------------+
                |                 | 0                            | 0                            |
 Gute nacht     | Ich weis nicht  | 56                           | 56                           |
 Ich weiß nicht | Ich wei? nicht  | 98                           | 98                           |
 Ich weiß nicht | Ich weiss nicht | 97                           | 97                           |
 Ich weiß nicht | [NULL]          | [NULL]                       | [NULL]                       |
 Snowflake      | Oracle          | 61                           | 61                           |
 święta         | swieta          | 77                           | 77                           |
 [NULL]         |                 | [NULL]                       | [NULL]                       |
 [NULL]         | [NULL]          | [NULL]                       | [NULL]                       |
----------------+-----------------+------------------------------+------------------------------+
Revenir au début