我有一张表,其中包含您可能在公司名称中找到的单词及其同义词。我想用它来标准化另一个表中的名称。例如,“WIDGET COMPANY INCORPORATED”将标准化为“WIDGET CO INC”。我认为它就像下面的交叉连接一样简单,但它似乎只针对列表中的第一个同义词运行,而不是整个列表。我会以错误的方式解决这个问题吗?如果我无法解决这个问题,我将尝试在 SSIS 中执行此操作,但我认为这会使原本应该是一项相对简单的任务过于复杂......当然,我意识到这是一个交叉连接,我们正在谈论很多行 - 准确地说是 5000 万行......
update [dbo].[Company addresses]
set [Name 1 syn] = replace(a.[Name 1 syn], ' ' + b.[Synonym] + ' ', ' ' + b.[Base] + ' ')
from [dbo].[Company addresses] a
cross join dbo.Synonyms b