sql-server - 使用 SQL 中的模式匹配预测供应商/贸易商列表中的类似供应商
问题描述
在你们最早的时候需要帮助!
我有与我们交易的发货人姓名重复记录... 我想在系统中搜索输入拼写错误或错误输入的类似发货人姓名。
例如参数:ABC 交易员
我需要返回的查询:
1. ABC , karachi , pakistan
2. ABCA , karachi , Pakistan
3. ABCA trader,karachi, Pakistan
4. AABC trd, karachi , pakistan
我想编写返回与输入数据非常相似的名称的查询..
这是示例查询假设数据集是:
SELECT ROW_NUMBER() OVER(ORDER BY ii.Consignor_Name ASC) AS rn,
ii.ConsignorName AS cn,
ii.ConsignorAddress AS ca,
rc.CountryName AS cc
FROM Index AS ii WITH(NOLOCK)
INNER JOIN Countries AS rc WITH (NOLOCK)
ON ii.Consignor_CountryName = rc.CountryID
WHERE YEAR(ii.EntryDate) > 2017
AND ii.ConsignorName IS NOT NULL
GROUP BY
ii.ConsignorName,
ii.ConsignorAddress,
rc.CountryName
ORDER BY
ii.ConsignorName ASC,
我提出的逻辑:在 SQL 中使用 Soundex 函数,但是 soundex 有局限性……
资料来源:http ://www.basistech.com/whitepapers/the-name-matching-you-need-EN.pdf
但是这种方法只是短文本上的单词 4 到 5 个单词的字符串...
有没有其他方法可以使用 SQL 来预测准确的数据?一种执行模式匹配?
另一个输出就像我想检查交易者的交易
解决方案
推荐阅读
- ios - 如何在 App Store 上私下上传应用程序?
- javascript - Firebase 检索返回未定义/对象对象
- r - dplyr:在每个组的末尾添加一个新行,根据前一行的变量计算
- css - 弹出背景阴影 CSS
- c++ - 在 C++17 中最有效地传递临时字符串文字?
- php - 如何将@csrf 作为字符串分配给变量并在运行时解码
- spring - DeleteById 方法返回 null
- operating-system - 操作系统代码和用户应用程序代码如何在同一处理器上运行
- html - 容器行对齐问题
- audio - 尽管数组索引在界限内,但仍抛出 ArrayIndexOutOfBoundsException