Elasticsearch 全字段搜索_all,query_string查询,不进行分词
2024-08-24 07:31:01
最近在使用ELasitcsearch的时候,需要用到关键字搜索,因为是全字段搜索,就需要使用_all字段的query_string进行搜索。
但是在使用的时候,遇到问题了。我们的业务并不需要分词,我在各个字段也设置了,not_analyzed。但是在使用query_string对_all字段进行查询的时候,
发现结果还是分词的。最后在官网找到这么一段话:
Remember that the _all field is just an analyzed string field. It uses the default analyzer to analyze its values, regardless of which analyzer has been set on the fields where the values originate. And like any string field, you can configure which analyzer the _all field should use:
PUT /my_index/my_type/_mapping
{
"my_type": {
"_all": { "analyzer": "whitespace" }
}
}
就是说,我们在字段中的分词设置并不管用,如果不需要分词,只能重新设置。也就是为_all指定分词器。这里,我指定了通过空格去进行分词。
终于,通过query_string就可以正常使用得到查询结果为不分词的了。
最新文章
- 又一个半成品库 weblog rpc client
- linux(centos)用户与权限
- java assert
- C++ new(1)
- c#调用cmd的ping命令
- jQuery 源码解析二:jQuery.fn.extend=jQuery.extend 方法探究
- css3学习笔记之2D转换
- 解析xlsx文件---Java读取Excel2007
- 脚本化css
- Idea报错Check $M2_HOME environment variable and mvn script match.
- 使用PHPword中文乱码并且下载的方法
- VS2005 与虚拟机的那点事
- win10安装ubuntu16.04双系统
- tomcat体系结构
- .Net分布式锁
- 极致21点开发DAY1
- 第17月第26天 setImageForState变形
- java用正则方法验证文件名是否合法
- mac OS 安装 scikit-learn
- Java数据结构和算法(四)赫夫曼树