可以query_string
和bool query
in结合filter query
吗?
例如 -
{
"filter": {
"query_string": {
"query": "field:text"
}
},
"bool": {
"should": {
"match": {
"field": "text"
}
}
}
}
可以query_string
和bool query
in结合filter query
吗?
例如 -
{
"filter": {
"query_string": {
"query": "field:text"
}
},
"bool": {
"should": {
"match": {
"field": "text"
}
}
}
}
bool 旨在用于将各种查询组合成一个 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"
}
}
]
}
}
}