我们希望提供对电气材料数据库(即导管、电缆等)的模糊搜索。问题是,由于所有材料类型缺乏一致性,我们无法将尺寸从文本描述中拆分到单独的字段中,因为有些材料是按尺寸以外的其他因素进行评级的。
我尝试将全文搜索和 Levenshtein 搜索算法的 SQL CLR 实现结合起来(用于帮助排名),但我的结果有点古怪(即,由于排名不正确,它们没有正确排序)。
例如,如果搜索词是“3/4”ABCD Conduit”,我可能会按以下顺序返回几个不相关的结果:
1/2" 导管 1/4" X 3/4" 电缆 1/4" 电缆扎带 3/4" DFC 导管三通 3/4" ABCD 导管 3/4" 导管
我相信我已经将问题归结为这两种搜索算法没有考虑标点符号和数字的相关性这一事实。也就是说,在这样的搜索中,我希望大小优先于描述其余部分的任何模糊匹配,但我的结果并没有反映这一点。
我的问题是:谁能推荐更好的搜索算法或可能更适合搜索字母数字和标点字符组合的不同方法?