Rediger

EDIT_DISTANCE_SIMILARITY (Transact-SQL) preview

Applies to: SQL Server 2025 (17.x) Azure SQL Database Azure SQL Managed Instance SQL analytics endpoint in Microsoft Fabric and Warehouse in Microsoft Fabric SQL database in Microsoft Fabric

Note

As a preview feature, the technology presented in this article is subject to Supplemental Terms of Use for Microsoft Azure Previews.

Calculates a similarity score between two strings based on their edit distance. The score ranges from 0 (no similarity) to 100 (an exact match).

Note

  • EDIT_DISTANCE_SIMILARITY is currently in preview.
  • SQL Server support for EDIT_DISTANCE_SIMILARITY introduced in SQL Server 2025 (17.x).
  • EDIT_DISTANCE_SIMILARITY is available in Azure SQL Managed Instance with the SQL Server 2025 or Always-up-to-date update policy.

Syntax

EDIT_DISTANCE_SIMILARITY (
    character_expression
    , character_expression
)

Arguments

character_expression

An alphanumeric expression of character data. character_expression can be a constant, variable, or column. The character expression can't be of type varchar(max) or nvarchar(max).

Return types

int

Remarks

This function implements the Damerau-Levenshtein (Optimal String Alignment) algorithm. If any of the inputs is NULL then the function returns a NULL value. Otherwise, the function returns an integer value from 0 to 100. The similarity value is computed as (1 - (edit_distance / greatest(len(string1), len(string2)))) * 100.

Examples

A. Calculate edit distance similarity between two words

The following example compares two words and returns the EDIT_DISTANCE_SIMILARITY() value as a column, named Similarity.

SELECT 'Colour' AS WordUK,
       'Color' AS WordUS,
       EDIT_DISTANCE_SIMILARITY('Colour', 'Color') AS Similarity;

Here's the result set.

WordUK WordUS Similarity
------ ------ -----------
Colour Color  83

For additional examples, see Example EDIT_DISTANCE_SIMILARITY().