【问题标题】:Azure search: flat data from Collection(Edm.String)Azure 搜索:来自 Collection(Edm.String) 的平面数据
【发布时间】:2016-08-24 04:01:30
【问题描述】:

请求 Azure 搜索服务后,我有以下 JSON 结构(使用 search=*):

 "value": [
        {
            "@search.score": 1,
            "id": "160",
            "title": "title1",
            "description": "description",
            "address": "Ranelagh Gardens, London, SW6 3PR, UK",
            "categories": [
                "{\r\n  \"description\": \"C1\",\r\n  \"id\": \"3\"\r\n}",
                "{\r\n  \"description\": \"C2\",\r\n  \"id\": \"4\"\r\n}"
            ]
        }

我想在 description=C1 等类别中进行搜索,但我不能。我尝试使用 $filter/categories.any(t:t eq 'C1') 但不起作用。

【问题讨论】:

    标签: azure azure-cognitive-search


    【解决方案1】:

    很遗憾,Azure 搜索尚不支持诸如此类的复杂数据类型。我会说这是top requested feature,所以它在我们的支持列表中排名靠前,但我们需要一些时间来实现它。

    与此同时,您可能想要查看的一些事情是查看是否有一个选项可以使您的文档变平。例如,在 Azure 搜索索引中创建一个名为 categoriesDescription 的字段和另一个名为 categoriesId 的字段,它们都是集合类型(基本上是字符串数组),是否现实?

    例如,也许您会让 categoriesDescription 包含 ["C1", "C2] 而 categoriesID 包含 ["3", "4"]?

    Kirk Evans 写了一个 nice blog post,其中还涵盖了扁平化 JSON 文档的主题,您可能会觉得这很有帮助。

    利亚姆

    【讨论】:

    • 如果我将类别拆分为 categoriesDescription 和 categoriesID 我可以使用该信息做一个方面吗?
    猜你喜欢
    • 2019-08-05
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2020-09-11
    • 1970-01-01
    • 2021-06-10
    • 2021-08-02
    相关资源
    最近更新 更多