繁体   English   中英

数组中的 Elasticsearch 查询匹配

[英]Elasticsearch query match in array

id: 1,
name: "Jean Pantalon",
title: null,
subtitle: null,
description: null,
tags: null,
seoUrl: null,
clickCounter: 0,
model: null,
sku: null,
ean: null,
displayPrice: 0,
price: 0,
isActive: true,
isDeleted: false,
productPhotos: null,
productCategories: [
  {
    id: 1,
    productId: 1,
    categoryId: 2,
    category: {
       id: 2,
       name: "Spor",
       topCategoryId: 0,
       subCategories: null
       }
    },
 ]

大家好,elasticseaarch有这么一个json yield,我想过滤一下,比如productCategories te category Sports的名字,这个查询怎么写

我正在使用 c# ta nest 库

我不知道如何在您的库中执行此操作,但在 elasticsearch 中:

productCategories 必须使用“嵌套”数据类型进行映射。 然后,您将能够构建这样的查询:

GET /my-index/_search
{
  "query": {
    "nested": {
      "path": "productCategories",
      "query": {
        "bool": {
          "must": [
            { "match": { "productCategories.category.name": "sport" } }
          ]
        }
      }
    }
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM