Tsql 如何在SQL Server中的文本字段中搜索名称

Tsql 如何在SQL Server中的文本字段中搜索名称,tsql,soundex,Tsql,Soundex,我需要从SQL Server中的文本字段中编辑专有名称。假设我有下表: PersonTable FirstName LastName Notes 我可以这样做: UPDATE PersonTable SET Notes = REPLACE(REPLACE(Notes, FirstName, 'REDACTED'), LastName, 'REDACTED') 对于精确的匹配条件,这应该很好,但是如果有人在Notes字段中拼错了名字或姓氏,或者更糟糕的是,使用了像Jim

我需要从SQL Server中的文本字段中编辑专有名称。假设我有下表:

PersonTable
    FirstName
    LastName
    Notes
我可以这样做:

UPDATE PersonTable
SET Notes = REPLACE(REPLACE(Notes, FirstName, 'REDACTED'), LastName, 'REDACTED')
对于精确的匹配条件,这应该很好,但是如果有人在Notes字段中拼错了名字或姓氏,或者更糟糕的是,使用了像Jim这样的昵称,该怎么办

我认为使用Contains进行全文搜索对于这种偏差是基于含义或派生的情况是有好处的,但是它对名称有效吗?即使它可以用于查找Notes包含名称的行,我认为它也不能用于替换场景

我也考虑过SOUNDEX,但我也不知道如何使用文本字段替换。我能看到的使用Soundex或类似工具的唯一方法是将文本字段拆分为单词,并对每个单词进行比较。我必须在人口稠密的表中的许多文本字段上执行此操作,因此如果有更好的方法,我不会对此感到兴奋

有没有人有做这种事情的经验


感谢

请在前后空格中替换,以获得完整的文字,或将为工作组编辑文字等内容。专有名词的屈折和同义有什么用?其他行的专有名称呢?对于soundex,您需要Notes中的单个单词。问题#666。这需要不止一种TSQL和方法。一个名字泄露出去的敏感性是什么?@Blam,这是一个很好的观察,但需要一些思考。例如,它适用于确实被空格包围的单词。但是对于字符串开头的单词,或者紧跟标点符号的单词,要小心。