es搜索所有字段(es搜索提示怎么实现)
导语:ES搜索,单个文字可以搜索,多个文字搜索失败
今天排查ES的一个问题:这个问题是客户反馈在搜索列表中搜索的时候,输入一个文字的搜索可以搜索出对应的数据,但是输入两个文字的时候搜索出来的结果是空。于是在排查这个问题的过程中原来的搜索参数是:
{&34;:0,&34;:50,&34;:{&34;:{&34;:[{&34;:{&34;:{&34;:&34;,&34;:1.0}}}],&34;:[{&34;:{&34;:{&34;:-1,&34;:1.0}}}],&34;:true,&34;:1.0}},&34;:[{&34;:{&34;:&34;}},{&34;:{&34;:&34;}}]}
当模糊搜索name是否包含“测”的名称的时候,数据可以正常搜索出来,但是当输入“测试”:
{&34;:0,&34;:50,&34;:{&34;:{&34;:[{&34;:{&34;:{&34;:&34;,&34;:1.0}}}],&34;:[{&34;:{&34;:{&34;:-1,&34;:1.0}}}],&34;:true,&34;:1.0}},&34;:[{&34;:{&34;:&34;}},{&34;:{&34;:&34;}}]}
该出来的数据却没出来。经过不同数据的排查,发现在name的搜索参数修改成name.keyword之后,即
{&34;:0,&34;:50,&34;:{&34;:{&34;:[{&34;:{&34;:{&34;:&34;,&34;:1.0}}}],&34;:[{&34;:{&34;:{&34;:-1,&34;:1.0}}}],&34;:true,&34;:1.0}},&34;:[{&34;:{&34;:&34;}},{&34;:{&34;:&34;}}]}
这样的话,数据可以正常的搜索出来。
后面大家如果碰到这样的问题,不妨用这个办法来处理一下。
本文内容由小梓整理编辑!