bug场景:
数据均在es中存储,模糊查询cn_name,原条件构造是用传参keyword取match,query es中的cn_name,bug为:搜索一个公司为:智慧树房地产开发有限公司,搜索“智慧树房地产”有关联搜索提示(类似与百度搜索下拉框提示),搜索“智慧树房地产开发有限公”即无关联提示,但这条数据是存在于es中的。
问题分析:
查看es中索引结构发现cn_name用的是ik,默认是最细力度划分: ik_max_word,
采用解决方式:
逻辑描述:
先用原来逻辑查询如结果为0是时再用wilicard分词去匹配
可以查询出,但是wilicard可能会影响性能
大家如果有什么好的方案,可以一起讨论分享~如有有误的地方请大家多多指正