可以使用嵌套查询来实现此需求。具体的查询语句如下:

{
  "query": {
    "nested": {
      "path": "Sku.CarSpecs",
      "query": {
        "bool": {
          "must": [
            {"match": {"Sku.CarSpecs.Id": q[0].Id}},
            {"match": {"Sku.CarSpecs.Value": q[0].Value}}
          ]
        }
      }
    }
  }
}

其中,'path' 参数指定了嵌套对象的路径,'query' 参数指定了嵌套查询的条件。在这个查询中,我们使用了一个'bool' 查询来组合两个'match' 查询,分别匹配'Id' 和 'Value' 字段是否与 'q' 中的对象相等。如果所有的 'q' 中的对象都能在 'Sku.CarSpecs' 中找到相等的对象,那么这个 SKU 就会被查询出来。

Elasticsearch 嵌套查询:如何匹配 Sku.CarSpecs 中的每个元素

原文地址: https://www.cveoy.top/t/topic/k6s1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录