Catégories :

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

EDITDISTANCE

Calcule la distance de Levenshtein entre deux chaînes d’entrée. C’est le nombre d’insertions, de suppressions ou de substitutions d’un seul caractère nécessaires pour convertir une chaîne en une autre.

Note

Contrairement à d’autres mesures (par exemple, Damerau-Levenshtein), les transpositions de caractères ne sont pas prises en compte.

Syntaxe

EDITDISTANCE( <expr1> , <expr2> )

Notes sur l’utilisation

  • EDITDISTANCE peut être coûteux en calcul. Le temps d’exécution de celui-ci est proportionnel au produit des longueurs des entrées.

    En conséquence, la longueur des entrées est limitée à 4 096 caractères chacune.

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

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

----------------+-----------------+--------------------+--------------------+
       s        |        t        | editdistance(s, t) | editdistance(t, s) |
----------------+-----------------+--------------------+--------------------+
                |                 | 0                  | 0                  |
 Gute nacht     | Ich weis nicht  | 8                  | 8                  |
 Ich weiß nicht | Ich wei? nicht  | 1                  | 1                  |
 Ich weiß nicht | Ich weiss nicht | 2                  | 2                  |
 Ich weiß nicht | [NULL]          | [NULL]             | [NULL]             |
 Snowflake      | Oracle          | 7                  | 7                  |
 święta         | swieta          | 2                  | 2                  |
 [NULL]         |                 | [NULL]             | [NULL]             |
 [NULL]         | [NULL]          | [NULL]             | [NULL]             |
----------------+-----------------+--------------------+--------------------+