ES高级查询
Query Content
在查询过程中,除了判断文档是否满足查询条件外,ES还会计算一个_score来标识匹配的程度,旨在判断目标文档和查询条件的匹配有多好
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"match": {
"author": "金庸"
}
}
}
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"match": {
"title": "入门"
}
}
}
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"match_phrase": {
"title": "入门"
}
}
}
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"multi_match": {
"query": "金庸",
"fields": ["author", "title"]
}
}
}
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"query_string": {
"query": "(java AND 门) OR 入"
}
}
}
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"query_string": {
"query": "java OR 门",
"fields": ["title", "author"]
}
}
}
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"term": {
"word_count": 100000
}
}
}
#gte:greater than equal
POST 192.168.100.102:9200/book/_search
{
"query": {
"range": {
"word_count": {
"gt": 1000,
"lte": 1000000
}
}
}
}
#gte:greater than equal
POST 192.168.100.102:9200/book/_search
{
"query": {
"range": {
"publish_date": {
"gt": "2007-12-01",
"lte": "now"
}
}
}
}
Filter Content
在查询过程中,只判断该文档是否满足条件,只有yes后者no
#
POST 192.168.100.102:9200/book/_search
{
"query": {
"bool": {
"filter": {
"term": {
"word_count": 100000
}
}
}
}
}
复合查询
常用查询
固定分数查询,布尔查询
#查询条件title=”java”
POST 192.168.100.102:9200/_search
{
"query": {
"match": {
"title": "java"
}
}
}
#
POST 192.168.100.102:9200/_search
{
"query": {
"constant_score": {
"filter": {
"match": {
"title": "java"
}
}
}
}
}
#
POST 192.168.100.102:9200/_search
{
"query": {
"constant_score": {
"filter": {
"match": {
"title": "java"
}
}
}
},
"boost": 2
}
#
POST 192.168.100.102:9200/_search
{
"query": {
"bool": {
"should": [
{
"match": {"author": "金庸"}
},
{
"match": {"title": "java"}
}
]
}
}
}
#
POST 192.168.100.102:9200/_search
{
"query": {
"bool": {
"must": [
{
"match": {"author": "金庸"}
},
{
"match": {"title": "java"}
}
],
"filter": [
{
"term": {
"word_count": 100000
}
}
]
}
}
}
#
POST 192.168.100.102:9200/_search
{
"query": {
"bool": {
"must_not": {
"term": {
"author": "hoo"
}
}
}
}
}
ES高级查询的更多相关文章
- 测试使用索引库crud和高级查询分页
1.搭建ES的服务 导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifa ...
- 031 Spring Data Elasticsearch学习笔记---重点掌握第5节高级查询和第6节聚合部分
Elasticsearch提供的Java客户端有一些不太方便的地方: 很多地方需要拼接Json字符串,在java中拼接字符串有多恐怖你应该懂的 需要自己把对象序列化为json存储 查询到结果也需要自己 ...
- elasticsearch 高级查询
高级查询 子条件查询 (特定字段查询所指特定值) 复合条件查询 (以一定的逻辑组合子条件查询) 一.子条件查询 子条件查询分为 query context.filter context 1.query ...
- java整合Elasticsearch,实现crud以及高级查询的分页,范围,排序功能,泰文分词器的使用,分组,最大,最小,平均值,以及自动补全功能
//为index创建mapping,index相当于mysql的数据库,数据库里的表也要给各个字段创建类型,所以index也要给字段事先设置好类型: 使用postMan或者其他工具创建:(此处我使用p ...
- MongoDB高级查询详细
前言 前几篇,老玩家绕道即可,新手晚上闲着也是蛋疼,不如把命令敲一边,这样你就会对MongoDB有一定的掌握啦.如果没有安装MongoDB去看我的上一篇博客 MongoDB下载安装与简单增删改查 前 ...
- T-SQL高级查询语句
高级查询 1.连接查询,对结果集列的扩展select * from info select * from info,nation #形成笛卡尔积select * from info,nation wh ...
- SQL Server高级查询
简介 关于数据库,我们经常会听说"增查删改"之类的词语,听起来很简单,但是如果想要准确的获取到需要的数据的话,还是要花点功夫的.下面由我来和大家谈谈高级查询的用法以及和普通查询的区 ...
- mongodb高级查询
前几篇,老玩家绕道即可,新手晚上闲着也是蛋疼,不如把命令敲一边,这样你就会对MongoDB有一定的掌握啦.如果没有安装MongoDB去看我的上一篇博客 MongoDB下载安装与简单增删改查 前奏:启 ...
- MySQL高级查询语句
高级查询: 一:多表连接 1.select Info.Code,Info.Name,Nation.Name from Info,Nation where Info.Nation = Nation.Co ...
随机推荐
- Go --- 设计模式(模板模式)
模版模式真的是一个好东西.所谓模版模式,就是说,某几个类中相同的操作和代码提取到父类的一个函数中,并定义相同的操作为抽象函数.由子类来实现.估计我也没表达清楚,下面还是看代码来讲解吧. 例:我们有两个 ...
- Android常见UI组件之ListView(二)——定制ListView
Android常见UI组件之ListView(二)--定制ListView 这一篇接上篇.展示ListView中选择多个项及实现筛选功能~ 1.在位于res/values目录下的strings.xml ...
- Python不同功能的函数
•函数作为参数 import math def add(x,y,f): return f(x) + f(y)print add(25,36,math.sqrt) •map()函数 map()是 Pyt ...
- java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeException
java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeException 遇到这样的问题 ...
- android之检測是否有网络
主要是用来检測是否有网络,假设没有,就去wifi里面去进行设置网络... 以下贴一下主要代码: private void checkNetWorkInfo() { if (!Tools.isNetwo ...
- [Sciter] 1. 创建最简单的Sciter项目
一些函数 sciter::debug_output_console _; 程序运行时自动启动一个控制台窗口,通过在_tiscript_中调用stdout.println来输出调试信息 SciterSe ...
- 【Android】获取控件的宽和高
有时候我们须要在Activity的时候获取控件的宽和高来做一些操作,以下介绍三种获取宽和高的方式: 1. onWindowFocusChanged @Override public void onWi ...
- mysql + Fluently NHibernate + WebAPI + Autofac
MySQL.Fluently NHibernate.WebAPI.Autofac,对我来说每一个都是麻烦疙瘩,现在它们为了一个共同的项目而凑合到一起了.一路磕磕碰碰,现在貌似有了一点眉目. 作为一个步 ...
- 2016/4/1 PDO:: 数据访问抽象层 ? :
①PDO方式连接 数据库 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- C++ 函数部分(1)
1.编写一个求X的n次方的函数 .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas ...