我一直在使用LIKE
查询来搜索知识库站点中的搜索字符串。因此,从逻辑上讲,“电话”一词可能会出现所有包含“电话”一词的页面。
但是当进入不太典型的搜索时,比如“电话”、“电话”、“电话”,我开始进入 LIKE 查询也停止工作的领域。
有人SOUNDEX
向我推荐,这样我不仅可以捕捉到精确匹配,还可以捕捉到相似匹配。
这是正确使用SOUNDEX
吗?有更合适的吗?
如果它是仅包含单词 phonecall 或类似单词的列,那么是的,这是 SOUNDEX 的一个很好的用途,因为您正在寻找听起来相同但拼写不同的字符串。如果您正在查看大量文本,则不太合适,因为您必须在生成 SOUNDEX 之前将文本分解为单词,因此这在诸如“电话”之类的两个单词版本上会失败。
对于改进的算法,我建议您查看Double Metaphone。