Compartilhar via


visualização EDIT_DISTANCE (Transact-SQL)

Aplica-se a: SQL Server 2025 (17.x) Banco de Dados SQL do AzureBanco de DadosSQL do Azure Banco de Dados SQL banco de dados SQL do Banco de Dados SQL do Azurebanco de dados SQL no Microsoft Fabric

Note

Como uma versão prévia do recurso, a tecnologia apresentada neste artigo está sujeita aos Termos de uso complementares para versões prévias do Microsoft Azure.

Calcula o número de inserções, exclusões, substituições e transposições necessárias para transformar uma cadeia de caracteres em outra.

Note

  • EDIT_DISTANCE está em versão prévia.
  • EDIT_DISTANCE atualmente não dá suporte a transposições.
  • Suporte a SQL Server foi EDIT_DISTANCE introduzido no SQL Server 2025 (17.x).
  • EDIT_DISTANCEestá disponível na Instância Gerenciada de SQL do Azure com a política de atualização do SQL Server 2025 ou Always-up-to-date.

Syntax

EDIT_DISTANCE (
    character_expression
    , character_expression [ , maximum_distance ]
)

Arguments

character_expression

Uma expressão alfanumérica de dados de caractere. character_expression pode ser uma constante, variável ou coluna. A expressão do caractere não pode ser do tipo varchar(max) ou nvarchar(max).

maximum_distance

A distância máxima que deve ser computada. maximum_distance é um inteiro. Se for maior ou igual a zero, a função retornará o valor de distância real ou um valor de distância maior que maxiumum_distance valor. Se a distância real for maior que maximum_distance, então a função pode retornar um valor maior ou igual a maximum_distance. Se o parâmetro não for especificado ou se maximum_distance for negativo, então a função retorna o número real de transformações necessárias. Se o valor for NULL, a função retornará NULL.

Valor de retorno

int

Remarks

Essa função implementa o algoritmo Damerau-Levenshtein. Se qualquer uma das entradas for NULL , a função retornará um NULL valor. Caso contrário, a função retornará um valor inteiro de 0 para o número de transformações ou maximum_distance valor.

Exemplos

O exemplo a seguir compara duas palavras e retorna o EDIT_DISTANCE() valor como uma coluna, chamada Distance.

SELECT 'Colour' AS WordUK,
       'Color' AS WordUS,
       EDIT_DISTANCE('Colour', 'Color') AS Distance;

Returns:

WordUK WordUS Distance
------ ------ -----------
Colour Color  1

Para obter exemplos adicionais, consulte Exemplo EDIT_DISTANCE().