Elasticsearch过滤相同值但不相同的字段

时间:2019-04-25 14:52:15

标签: elasticsearch php-7.2

我正在电子商务网站上进行弹性研究,但遇到过滤器问题。我在differents字段中有一些相同的值,尤其是对于长度值。

我已经尝试过以下查询:

"query": {
    "bool": {
      "must": [
        {
          "multi_match": {
            "query": "serrure",
            "fields": [
              "titleSearch"    
              , "titleSearch.light"
              , "titleSearch.heavy"
              , "titleSearch.ngram"
            ],
            "type": "best_fields"
          }
        }
      ],
      "filter": [
        {
          "bool": {
            "must": [
              {
                "term": {
                  "product_child.attributeValue.attribute.content.title": "Axe"
                }
              }
            ],
            "filter": {
              "term": {
                "product_child.attributeValue.value": "40 mm"
              }
            }
          }
        },
        {
          "bool": {
            "must": [
              {
                "term": {
                  "product_child.attributeValue.attribute.content.title": "Largeur coffre"
                }
              }
            ],
            "filter": {
              "term": {
                "product_child.attributeValue.value": "30 mm"
              }
            }
          }
        }
      ]
    }
  }

和其他一些,但是我一直都遇到同样的问题。

我的两个值都有一些好的结果,但是我有很多不好的结果。

示例:“大型棺材”:“ 40毫米”和“斧头”:“ 60毫米”

预期:“ Largeur coffre”:“ 30 mm”和“ axe”:“ 40 mm”

我不知道如何在良好的键/值上创建Elasticsearch过滤器。

能帮我吗?

谢谢

0 个答案:

没有答案