|NO.Z.00023|——————————|BigDataEnd|——|Hadoop&ElasticSearch.V23|——|ELK.v23|集群|QueryDSL|复合搜索|

一、复合搜索(compound query)
### --- 布尔搜索(bool query)

~~~     # bool 查询用bool操作来组合多个查询子句为一个查询。 可用的关键字:
~~~     must:必须满足
~~~     filter:必须满足,对集合包含/排除的简单检查,计算速度非常快,不参与、不影响评分
~~~     should:或
~~~     must_not:必须不满足,在filter上下文中执行,不参与、不影响评分
~~~     description中必须包含java,
~~~     price必须满足大于100小于1000,
~~~     name字段可以是lucene或者是solr中的一种即可,
~~~     时间满足。。。。
POST /book/_search
{
"query": {
"bool" : {
"filter" : {
"match" : { "description" : "java" }
},
"must": [
{
"range" : {
"price" : { "gte" : 100, "lte" : 1000 }
}
},
{"bool": {
"should": [
{"term":{"name":"lucene"}},
{"term":{"name":"solr"}}
]
}}
],
"must_not": [
{
"range": {
"timestamp": {
"gte": "18/08/2020",
"lte": "2021",
"format": "dd/MM/yyyy||yyyy"
}
}
}
]
}
}
}

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on 2022-04-15 14:15  yanqi_vip  阅读(12)  评论(0)    收藏  举报

导航