Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: Sql Server 2025 (17.x)
Punto de conexión de análisis sql de Azure SQL Database de Azure SQL Databasede
Azure SQL Database
en Microsoft Fabric y Almacenamiento en la
base de datos SQL de Microsoft Fabric en Microsoft Fabric
Note
Como característica en versión preliminar, la tecnología que se presenta en este artículo está sujeta a los términos de uso complementarios para las versiones preliminares de Microsoft Azure.
Calcula la distancia de edición entre dos cadenas, que es el número mínimo de inserciones, eliminaciones, sustituciones y transposiciones necesarias para transformar una cadena en la otra.
Note
-
EDIT_DISTANCEestá en versión preliminar. -
EDIT_DISTANCEestá disponible en SQL Server 2025 (17.x). -
EDIT_DISTANCEestá disponible en Instancia administrada de Azure SQL con la directiva de actualización de sql Server 2025 o Always-up-to-date.
Syntax
EDIT_DISTANCE (
character_expression
, character_expression [ , maximum_distance ]
)
Arguments
character_expression
Expresión alfanumérica de datos de caracteres. character_expression puede ser una constante, una variable o una columna. La expresión del carácter no puede ser del tipo varchar(máx) o nvarchar(máx).
maximum_distance
Un valor opcional que especifica la distancia máxima de edición a calcular.
maximum_distance es un entero. Cuando maximum_distance es mayor o igual a 0, la función puede dejar de procesar una vez que determina que la distancia de edición supera el valor especificado.
Si la distancia real de edición es menor o igual a maximum_distance, la función devuelve la distancia real. De lo contrario, la función devuelve maximum_distance + 1.
Si maximum_distance no se especifica o es negativo, la función devuelve la distancia real de edición. Si maximum_distance es NULL, la función devuelve NULL.
Valor devuelto
int
Esta función implementa el algoritmo Damerau-Levenshtein (Alineación Óptima de Cadenas) para devolver la distancia entre los dos character_expressions, o maximum_distance valor si es menor.
Si alguna de las entradas es NULL , la función devuelve un NULL valor.
Remarks
Si la distancia real es mayor que maximum_distance, entonces la función devuelve maximum_distance + 1.
Examples
A. Calcular la distancia de edición entre dos palabras
En el ejemplo siguiente se comparan dos palabras y se devuelve el EDIT_DISTANCE() valor como una columna denominada Distance.
SELECT 'Colour' AS WordUK,
'Color' AS WordUS,
EDIT_DISTANCE('Colour', 'Color') AS Distance;
Returns:
WordUK WordUS Distance
------ ------ -----------
Colour Color 1
B. Calcula la distancia de edición entre dos palabras limitadas por un valor máximo
El siguiente ejemplo compara dos palabras y devuelve el EDIT_DISTANCE() limitado a un valor máximo.
SELECT Source,
Target,
EDIT_DISTANCE(Source, Target) AS ActualDistance,
EDIT_DISTANCE(Source, Target, 2) AS LimitedDistance
FROM (VALUES ('Chocolate', 'Sweets')) AS compare(Source, Target);
Este es el conjunto de resultados.
Source Target ActualDistance LimitedDistance
--------- --------- -------------- ---------------
Chocolate Sweets 8 3
Para más ejemplos, véase el ejemplo EDIT_DISTANCE en la visión general de coincidencias de cadenas difusas.