I'm sorry.
This is resolved.
I replaced "miminum_should_match" to "min_should_match" on TermsQuery.
==========================
Hello guys.
I have a bool + terms query:
{
"size": 10,
"query" : {
"bool" : {
"must": [
{
"terms": {
"title": [
"nike",
"sport"
]
}
}
],
"minimum_number_should_match": 2
}
}
}
or
{
"size": 10,
"query" : {
"bool" : {
"should": [
{
"terms": {
"title": [
"nike",
"sport"
]
}
}
],
"minimum_should_match": 2
}
}
}
This query means title field must have two keyword which are nike and sport.
but i have below result.
...
"_index" : "product",
"_type" : "deal",
"_id" : "AVThxx44V_2_BBvDN_y5",
"_score" : 3.9251113,
"_source" : {
"id" : 25006,
"item_group_id" : 36047,
"title" : "[Nike] Inspiration and Innovation for Every Athlete in the World.",
...
Why does not work minimum_should_match:2?
[Environment]
- OS : Ubuntu 14.04
- Elasticsearch : 2.3.3
- JDK : 1.8.x