c# – 有没有办法在SQL数据库中搜索相似的单词(意思是不相同的单词)?

前端之家收集整理的这篇文章主要介绍了c# – 有没有办法在SQL数据库中搜索相似的单词(意思是不相同的单词)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

有没有办法搜索MySQL数据库中的相似单词(意思是不相同的单词).例如:用户数据库搜索单词“abcd”并且数据库中有一个单词“abd”,因此搜索引擎或程序询问用户“你的意思是[abd]?”,就像在大多数搜索引擎中一样网络?请注意,搜索词不是现有单词的一部分(不能使用“like”)

最佳答案
看看Damerau-Levenshtein distance算法.它计算两个字符串之间的“距离”,并确定将一个字符串转换为另一个字符串所需的步数.两个琴弦越近,步数就越小.

This文章显示了作为MysqL存储函数实现的算法.

该算法比LIKE或SOUNDEX好得多.

我相信Google使用众包源数据而不是算法.即,如果用户键入abcd,单击后退按钮然后立即搜索abd,则会在用户对结果不满意时建立两个搜索项之间的关系.一旦您进行了非常大的社区搜索,就会出现该模式.

猜你在找的MySQL相关文章