在filter query
中,是否可以将query_string
和bool query
组合使用?
例如 -
{
"filter": {
"query_string": {
"query": "field:text"
}
},
"bool": {
"should": {
"match": {
"field": "text"
}
}
}
}
在filter query
中,是否可以将query_string
和bool query
组合使用?
例如 -
{
"filter": {
"query_string": {
"query": "field:text"
}
},
"bool": {
"should": {
"match": {
"field": "text"
}
}
}
}
bool的作用是将多个查询组合成一个布尔查询。您可以使用bool将多个查询组合在一起。
{
"query": {
"bool": {
"must": [
{
"query_string": {
"query": "field:text"
}
},
{
"match": {
"field": "text"
}
}
]
}
}
}
must子句将确保所有条件都匹配。 如果只使用should,则可以使用should来确保任一查询被匹配。
由于bool只是另一种查询类型,因此您也可以将bool查询组合在bool查询中,如下所示 -
{
"query": {
"bool": {
"must": [
{
"bool": {
"must": [
{
"query_string": {
"query": "field:text"
}
},
{
"match": {
"field": "value"
}
}
]
}
},
{
"match": {
"field": "text"
}
}
]
}
}
}