在 python 中,有一个很好的内置函数,可以让我检查两个字符串序列之间的差异。下面的例子:
from difflib import SequenceMatcher
def similar(a, b):
return SequenceMatcher(None, a, b).ratio()
示例:
similar("Apple","Appel")
0.8
similar("Apple","Mango")
0.0
SQL中有等价的函数吗?
我需要做的是将两个表连接在一列上。在表 A 上,此列是他们的实际帐号,在另一个表上,该列是用户添加其帐号,这不是必填字段,因此我注意到他们的实际帐号略有不同。
表A
account_num Name
5WWW55 John
DDDDD7 Jacob
SSSSX7 jingleheimer
表B
account_num Name
5WWW55 John
3SSSX7 jingleheimer -- First character is different
Select Table_A.account_num,
Table_b.Name
FROM Table_A
JOIN TABLE_B
on Table_A.account_num = Table_B.account_num
预期输出:
account_num Name
5WWW55 John
SSSSX7 jingleheimer
最佳答案
您可以使用DIFFERENCE
:
SELECT Table_A.account_num,
Table_b.Name
FROM Table_A
JOIN TABLE_B
ON DIFFERENCE(Table_A.account_num , Table_B.account_num) = 4;
<强> db<>fiddle
关于sql - SQL Server 中是否有相当于 python 的 SequenceMatcher 来连接相似的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53785891/