Table 1
Account ID Account name
Missing Agreete NV.
Table 2
Account ID Account name
XXX4546778 Agreete
我必须根据查看两个表中帐户名称的最佳匹配来计算表1中的所有帐户ID。
我想到了,patindex&同音。
考虑一下我正在考虑比较全字符串,如果没有匹配则比较完整字符串-1,如果不匹配则再比较完整字符串-2直到你得到一个匹配。
然而,有人必须提出模式匹配sql算法,这将以低错误率执行此操作。有什么想法吗?
答案 0 :(得分:1)
也许我错过了你的问题,但在我看来,你有完全像你所说的匹配
update t1
set [account id] = t2.[account id]
from table1 t1
inner join table2 t2 on t1.[account name] = t2.[account name]
where t1.[account id] = 'missing'
你有部分匹配
update t1
set [account id] = t2.[account id]
from table1 t1
inner join table2 t2 on t1.[account name] like t2.[account name] + '%'
where t1.[account id] = 'missing'
按顺序运行......