架构师成长记_第八周_15_dsl搜索- 布尔查询
Posted 流浪少年的梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了架构师成长记_第八周_15_dsl搜索- 布尔查询相关的知识,希望对你有一定的参考价值。
文章目录
dsl搜索- 布尔查询
1. must (bool下面的条件必须都要满足, 如下的multi_match, term 等)
{
"query": {
"bool": {
"must": [
{
"multi_match":{
"query":"慕课网",
"fields":[
"desc",
"nickname"
]
}
},
{
"term":{
"sex":1
}
},
{
"term":{
"birthday":"1996-01-14"
}
}
]
}
}
}
2. should (bool下面的条件满足之一即可, 如下的multi_match, term 等)
{
"query": {
"bool": {
"should": [
{
"multi_match":{
"query":"慕课网",
"fields":[
"desc",
"nickname"
]
}
},
{
"term":{
"sex":1
}
},
{
"term":{
"birthday":"1996-01-14"
}
}
]
}
}
}
3. must_not (bool下面的满足条件的进行排除, 如multi_match, term 等)
{
"query": {
"bool": {
"must_not": [
{
"multi_match":{
"query":"慕课网",
"fields":[
"desc",
"nickname"
]
}
},
{
"term":{
"sex":0
}
}
]
}
}
}
4. 组合使用
{
"query": {
"bool": {
"must": [
{
"match": {
"nickname": "慕"
}
},
{
"match": {
"desc": "大学"
}
}
],
"should": [
{
"match": {
"sex": 1
}
}
]
}
},
"_source": [
"id",
"desc",
"nickname",
"sex"
]
}
5. boost 进行加权
{
"query": {
"bool": {
"should": [
{
"match": {
"desc": {
"query": "慕课网",
"boost": 2
}
}
},
{
"match": {
"desc": {
"query": "律师",
"boost": 20
}
}
}
]
}
},
"_source": [
"id",
"desc",
"nickname",
"sex"
]
}
以上是关于架构师成长记_第八周_15_dsl搜索- 布尔查询的主要内容,如果未能解决你的问题,请参考以下文章
架构师成长记_第八周_13_dsl搜索-查询所有内容与分页查询
架构师成长记_第八周_13_dsl搜索-查询所有内容与分页查询
架构师成长记_第八周_14_dsl搜索 - term, terms, match, match_phrase 等方式检索详解