基本查询(Query查询中文)
查询语句:
GET /lib4/user/_search
{"query": {"term": {"interests":"唱歌"}}
}#terms:查询某个字段里含有多个关键词的文档
GET /lib4/user/_search
{"query":{"terms":{"interests": ["喝酒","唱歌"]}}
}
数据准备:
#2.7.1数据准备
PUT /lib4
{ "settings":{"number_of_shards" : 3, "number_of_replicas" :0},"mappings":{"user":{"properties":{"name": {"type":"text","analyzer":"ik_max_word"}, "address": {"type":"text","analyzer": "ik_max_word"},"age": {"type" :"integer"},"interests": {"type":"text","analyzer": "ik_max_word"},"birthday": {"type":"date"}}}}
}
#ik芾有两个分词器
#ik_max_word :会将文本做最细粒度的拆分;尽可能多的拆分出词语
#ik_smart:会做最粗粒度的斥分;已被分出的词语将不会再次被其它词语占有
#2.7.2 term查询和terms查询
#term query会去倒排索引中寻找确切的term,它并不知道分词器的存在。
#这种查询适合keyword、numeric、date.
#term:查询某个字段里含有某个关键词的文档
添加5个文档:
PUT /lib4/user/1
{"name" : "赵六","address" : "黑龙江省 铁岭","age" : 50,"birthday" : "1970-12-12","interests": "喜欢喝酒,锻炼,说相声"
}PUT /lib4/user/2
{"name" :"赵明","address" :"北京海淀区清河","age" : 20,"birthday" : "1998-10-12" ,"interests": "喜欢喝酒,锻炼,唱歌"
}PUT /lib4/user/3
{"name" : "lisi","address" :"北京海淀区清河","age" : 23,"birthday" : "1998-10-12","interests": "喜欢喝酒,锻炼,唱歌"
}PUT /lib4/user/4
{"name" :"王五","address" : " 北京海淀区清河","age" : 26,"birthday" : "1995-10-12","interests": "喜欢编程,听音乐,旅游"
}PUT /lib4/user/5
{"name" : "张三","address" :"北京海淀区清河","age" : 29,"birthday" : "1988-10-12","interests": "喜欢摄影,听音乐,跳舞"
}
term和terms查询
term是代表完全匹配,即不进行分词器分析,文档中必须包含整个搜索的词汇
#term和terms查询
#查询字段中含有赵的
GET /lib4/user/_search
{"query": {"term": {"name":"赵"}}
}#指定多个关键字,只要包含其中一个就会被查询出来
GET /lib4/user/_search
{"query":{"terms":{"interests": ["喝酒","唱歌"]}}
}#控制返回的数据条数 取前2条
GET /lib4/user/_search
{"from":0,"size": 2, "query":{"terms":{"interests": ["喝酒","唱歌"]}}
}#版本号的返回
GET /lib4/user/_search
{"version":true,"query":{"terms":{"interests": [" 喝酒", "唱歌"]}}
}
match查询 match是知道分词器存在的这个之前就讲过
赵六会被分词为两个词 含有赵和六的都会被查询出来
#match查询
GET /lib4/user/_search
{"query":{"match":{"name": "赵六"}}
}
然后对于数字型的是不会被分词的比如查询年龄20的 这个不会被分成2和0 所以查询结果会去从文档匹配年龄为20的信息
GET /lib4/user/_search
{"query":{"match":{"age": 20}}
}GET /lib4/user/_search
{"query": {"match_all": {}}
}
#multi_match指定多个字段关键字匹配 ;match_phrase短语精确匹配 ;_source指定查询结果返回的字段信息
#指定多个字段匹配
GET /lib4/user/_search
{"query":{"multi_match": {"query": "唱歌","fields": ["interests", "name"]}}
}#短语匹配
GET lib4/user/_search
{"query":{"match_phrase" :{"interests": "锻炼,说相声"}}
}#返回指定的字段
GET /lib4/user/_search
{"_source": ["address" , "name"],"query": {"match": {"interests": "唱歌"}}
}
基本查询(Query查询中文)相关推荐
- Hibernate查询Query By Criterial
提供的检索方式: (1)导航对象图检索方式 (2)OID检索方式 (3)HQL检索方式 (4)QBC检索方式[query by Criteria(标准)] (5)本地SQL检索方式 1.简介 1.1 ...
- Elasticsearch高级查询Query DSL
一.高级查询Query DSL简介 1.Query DSL(简介 Elasticsearch中提供了一种强大的检索数据方式,这种检索方式称之为Query DSL(Domain Specified La ...
- [转]ArcGIS.Server.9.3和ArcGIS API for Flex实现Query查询定位中心功能(七)
目的: 1.ArcGIS API for Flex实现Query查询定位中心功能,进行属性查图的功能,选择图层然后输入查询语句进行查询把查到的地理元素高亮显示同时在右边的Grid中显示查到的数据,然后 ...
- 解决PLSQL 查询后显示中文为问号(???)问题
解决PLSQL 查询后显示中文为问号(???)问题 参考文章: (1)解决PLSQL 查询后显示中文为问号(???)问题 (2)https://www.cnblogs.com/wqkeep/p/120 ...
- hibernate 高级查询 query 或查询 or ,Restrictions
hibernate 高级查询 query 或查询 or ,Restrictions 今天用了写hibernate高级查询时用了Restrictions(当然Expression也是可以以的)这个类.感 ...
- Hibernate——Query查询
原文地址 前两篇文章介绍了获取SessionFactory,Session,以及Session的三种状态及其之间的转换,本文势必要将大家最关心的问题做出介绍,也就是大家最关心的通过Hibernate提 ...
- SQVI和SAP查询QUERY的区别和使用注意事项
SQVI.SAP查询QUERY都适用于简单的表连接数据查询,但都不能打包传输到PRD,不同环境需要重复创建.可以生成报表程序供T-CODE调用,用se93指定事务码和程序名称.区别1-权限:SQVI每 ...
- 【转载保存】Lucene 实战教程第六章 Lucene 的精确、包含、集合查询 Query 的简单使用
原链接:https://www.xttblog.com/?p=3532 所有的搜索基本上都存在精确匹配,包含等操作.Lucene 中同样存在这样的操作,今天我们以 IntPoint 为例,来说说 Lu ...
- ibatis 模糊查询 mysql_Mybatis使用MySQL模糊查询时输入中文检索不到结果怎么办
项目开发中,在做Mybatis动态查询时,遇到了一个问题:MySQL在进行LIKE模糊查询时,输入英文可以正常检索出结果,但是输入中文后检索得到的结果为空. 由于是使用GET方式请求,所以为了确保中文 ...
最新文章
- Struts2中通配符的使用
- quartz+spring框架动态调整频率实践
- stm32单片机屏幕一直闪_STM32使用HAL库函数点亮OLED
- (转)Http协议经典详解
- Oracle DMP 导入导出
- windows中运行qt5构建的程序提示 无法启动此程序,因为计算机中丢失qt5Cored.dll 解决方法
- SQL Server执行计划
- ShardingSphere RAW JDBC 分布式事务 Narayana XA 代码示例
- php错误日志框架,错误与日志 - Laravel - 为 WEB 艺术家创造的 PHP 框架。
- 【GIS导论】实验二 数据采集
- 20141110的alltosun面试
- MyCat分片规则之一致性hash分片
- python写界面c这算法_OpenCV算法精解:基于Python与C.pdf
- java实训项目总结
- 四旋翼无人机飞控系统设计(方案篇)
- 网站地图是什么,怎么制作和查看网站的地图呢?
- Java打印表格 Console/控制台
- 前端面试题 ~ 移动端注意
- 鼠标点击网页出现爱心特效
- 微信公众号支付开发手记(node)
热门文章
- 解决matlab2018a安装后遇到matlab license manager error -8
- lingo入门(数据部分)
- mouseup 左键_javascript中mouseup事件丢失的原因与解决办法
- mysql 复杂的sql_mysql 一个复杂的sql
- 卷积神经网络原理_人脸识别背后,卷积神经网络的数学原理原来是这样的
- kafka使用_Kafka介绍与使用
- python如何导入函数_Python导入(import)模块的方法
- django启动时同时使用Schedule启动其他程序
- 怎么在html的img src=src的值这里调用js方法或变量获取图片地址
- Python unittest中初始化固件setUp和销毁固件tearDown详解