适用于:SQL Server 2025 (17.x) 在
Microsoft Fabric 中预览
Azure SQL 数据库
Azure SQL 托管实例 SQL 数据库
注释
作为预览版功能,本文中介绍的技术受制于 Microsoft Azure 预览版补充使用条款。
计算将一个字符串转换为另一个字符串所需的插入、删除、替换和换行数。
注释
- EDIT_DISTANCE目前为预览版。
- SQL Server 2025 (17.x) 预览版中引入EDIT_DISTANCE的 SQL Server 支持。
语法
EDIT_DISTANCE (
character_expression,
character_expression [ , maximum_distance ]
)
论据
character_expression
字符数据的字母数字表达式。 character_expression 可以是常量、变量或列。 字符表达式的类型不能为 varchar(max) 或 nvarchar(max)。
maximum_distance
应计算的最大距离。 整数。 如果大于或等于零,则该函数返回实际距离值或大于 maxiumum_distance 值的距离值。 如果实际距离大于 maximum_distance,则该函数可能会返回大于或等于 maximum_distance的值。 如果未指定参数或 maximum_distance 为负数,则该函数将返回所需的实际转换数。 如果值为 NULL,则函数返回 NULL。
返回值
int
注解
此函数实现 Damerau-Levenshtein 算法。 如果任一输入是 NULL
,则该函数将返回一个 NULL
值。 否则,该函数将一个整数值从 0 返回到转换数或 maximum_distance 值。
示例:
下面的示例比较两个单词,并将该值作为列返回 EDIT_DISTANCE()
,命名 Distance
。
SELECT 'Colour' AS WordUK,
'Color' AS Word US,
EDIT_DISTANCE('Colour', 'Color') AS Distance;
返回:
WordUK WordUS Distance
------ ------ -----------
Colour Color 1
有关其他示例,请参阅示例EDIT_DISTANCE()。