database – 匹配模糊字符串

我需要在Postgresql中将两个表合并在公共变量“公司名称”上.不幸的是,许多公司名称并不完全匹配(即一个表中的MICROSOFT,另一个表中的MICROSFT).我尝试从两个列中删除常用词,例如“corporation”或“inc”或“ltd”,以便尝试在两个表中标准化名称,但我无法考虑其他策略.有任何想法吗?

谢谢.

此外,如果有必要,我可以在R中这样做

你考虑过fuzzystrmatch模块吗?你可以使用soundex,差异,levenshtein,Metaphone和dMetaphone,或者组合.

fuzzystrmatch documentation

SELECT something
FROM somewhere
WHERE levenshtein(item1,item2) < Carefully_Selected_Threshold

例如,从MICROSOFT到MICROSFT的levenshtein距离是一(1).

levenshtein(dMetaphone('MICROSOFT'),dMetaphone('MICROSFT')

以上返回零(0).结合levenshtein和dMetaphone可以帮助你匹配许多拼写错误.

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...