elasticsearch查询语句

丰富的查询语句:

#match查询 这个会将爬虫二字分开 大小写处理 分词
GET lagou/_search
{
	"query":{
		"match":{
			"title":"爬虫"
		}
	}
}

#term查询 爬虫二字不处理 不解析字段
GET lagou/_search
{
	"query":{
		"term":{
			"title":"爬虫"
		}
	}
}

#terms查询 只要中了列表中的一个字段及 返回结果
GET lagou/_search
{
	"query":{
		"terms":{
			"title":["爬虫","网站"]
		}
	}
}

#控制查询的返回结果 数量控制
GET lagou/_search
{
	"query":{
		"match":{
			"title":"爬虫"
		}
	},
	"form":1,
	"size":2
}

#match_phrase短语查询 会把关键字分词,但是查询结果必须满足全部词条
#slop表示词条之间的最小距离 
GET lagou/_search
{
	"query":{
		"match_phrase":{
			"title":{
				"query":"python系统",
				"slop":6
			}
		}
	}
}

#multi_search 指定多个字段查询
#fields 指明查询的目标字段
GET lagou/_search
{
	"query":{
		"multi_match":{
			"title":{
				"query":"python系统",
				"fields":["title","desc"]
			}
		}
	}
}

#指定返回字段 "title","company_name"
GET lagou/_search
{
	"stored_fields":["title","company_name"],
	"query":{
		"match":{
			"title":"python"
		}
	}
	}


#sort结果排序
#range范围查询
#wildCard模糊查询

还有:

#bool查询

Bool查询对应Lucene中的BooleanQuery,它由一个或者多个子句组成,每个子句都有特定的类型。


must
返回的文档必须满足must子句的条件,并且参与计算分值


filter
返回的文档必须满足filter子句的条件。但是不会像Must一样,参与计算分值


should
返回的文档可能满足should子句的条件。在一个Bool查询中,如果没有must或者filter,有一个或者多个should子句,那么只要满足一个就可以返回。minimum_should_match参数定义了至少满足几个子句。


must_nout
返回的文档必须不满足must_not定义的条件。


如果一个查询既有filter又有should,那么至少包含一个should子句。


bool查询也支持禁用协同计分选项disable_coord。一般计算分值的因素取决于所有的查询条件。


bool查询也是采用more_matches_is_better的机制,因此满足must和should子句的文档将会合并起来计算分值。




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值