如何在CosmosDB SQL中查询嵌套数组中的字段

时间:2019-12-05 16:21:00

标签: sql azure-cosmosdb

在给定此文档结构的情况下,如何使用CosmosDB SQL查询返回所有具有parameter.code = "123"的文档?是否需要使用UDF? (如果是这样,怎么办?)

{
    "batch_id": "abc",
    "samples": [
        {
            "sample_id": "123",
            "tests": [
                {
                    "parameter": {
                        "code": "123", // <- target
                    }
                }
            ]
        }
    ]
}

1 个答案:

答案 0 :(得分:1)

无需使用UDF(用户定义函数),只需使用带双JOIN的cosmos db查询sql。

SQL:

SELECT c.batch_id FROM c
join samples in c.samples 
join tests in samples.tests
where tests.parameter.code = "123"

输出:

enter image description here