ES模糊查询失效问题

简介: 记录一下今天帮同事排查的一个问题

今天同事找我说ES的模糊查询失效了,让我帮忙看一下是什么情况,经过mapping的查看发现那个对应的字段在入数的时候变成了text类型,导致wildcard失效,因为我们text类型在存储前会自动进行分词处理,当我们使用wildcard查询中文的时候,相当于是对拆分后的词组进行查询,该语句已经不是完整的了,正常情况下,text类型需要搭配分词器进行match查询使用,如果有中文,还需要接入IK分词器或者自定义分词器,如果我们要使用模糊查询的话要使用keyword类型,因为keyword类型默认是不会进行切分处理的.


我们也可以使用下述的语句来查看对应默认分词器的分词结果

POST/_analyze{
"analyzer": "standard",
"text": "你好我是张三 i am very happy"}
目录
相关文章
|
8月前
|
SQL Oracle 关系型数据库
分析索引失效的几种情况
联合索引 is not null 只要在建立的索引列(不分先后)都会走, in null时 必须要和建立索引第一列一起使用,当建立索引第一位置条件是is null 时,其他建立索引的列可以是is null(但必须在所有列 都满足is null的时候),或者=一个值; 当建立索引的第一位置是=一个值时,其他索引列可以是任何情况(包括is null =一个值),以上两种情况索引都会走。其他情况不会走。
111 1
|
8月前
|
SQL Oracle 关系型数据库
索引失效的情况分析
大家都知道,一条查询语句走了索引和没走索引的查询效率是非常大的,在我们建好了表,建好了索引后,但是一些不好的sql会导致我们的索引失效,下面介绍一下索引失效的几种情况
50 0
|
SQL JSON 数据格式
ES中如何实现空值和非空值的查询
ES中如何实现空值和非空值的查询
4796 0
|
存储 缓存 JSON
Redis实现分页+多条件模糊查询组合方案
Redis实现分页+多条件模糊查询组合方案
416 0
|
存储 缓存 JSON
Redis实现分页和多条件模糊查询方案
本文将基于Redis提供条件查询+分页的技术解决方案。
1762 0
Redis实现分页和多条件模糊查询方案
|
数据库 索引
MysSQL索引会失效的几种情况分析
MysSQL索引会失效的几种情况分析
156 0
MysSQL索引会失效的几种情况分析
|
JSON Java 数据格式
ES复杂查询-模糊查询
ES复杂查询-模糊查询
|
关系型数据库 MySQL
ES复杂查询-结果过滤, 排序,分页
ES复杂查询-结果过滤, 排序,分页
|
8月前
|
关系型数据库 分布式数据库 PolarDB
使用 PolarDB 开源版 bloom filter index 实现任意字段组合条件过滤
背景PolarDB 的云原生存算分离架构, 具备低廉的数据存储、高效扩展弹性、高速多机并行计算能力、高速数据搜索和处理; PolarDB与计算算法结合, 将实现双剑合璧, 推动业务数据的价值产出, 将数据变成生产力.本文将介绍使用 PolarDB 开源版 bloom filter index 实现任...
145 0
|
SQL 自然语言处理 关系型数据库
ES中如何实现like模糊查询
ES中如何实现like模糊查询
2323 0
ES中如何实现like模糊查询

热门文章

最新文章