从Cosmos Db中的数组获取值

时间:2019-06-30 18:43:55

标签: azure-cosmosdb azure-cosmosdb-sqlapi

我保存在Cosmos DB中的文档如下:

{
   "id": "abc123",
   "myProperty": [
      "1905844b-6ca9-4967-ba40-a736b685ca62",
      "b03cc85c-ef0b-4f48-9c31-800de089190a"
   ]
}

如您所见,在myProperty属性中,我有一个GUID值数组,我想将它们读取为GUID值的数组/列表,但是我在编写正确的{{1 }}声明。

我正在寻找的输出是:

SELECT

我能得到的最接近的是这个SELECT语句:

[
   "1905844b-6ca9-4967-ba40-a736b685ca62",
   "b03cc85c-ef0b-4f48-9c31-800de089190a"
]

但是,这也不能完全给我我想要的东西。这给了我数组中的一个数组,即

SELECT VALUE c.myProperty FROM c WHERE c.id = "abc123"

我的[ [ "1905844b-6ca9-4967-ba40-a736b685ca62", "b03cc85c-ef0b-4f48-9c31-800de089190a" ] ] 语句应该如何获得我想要的?

1 个答案:

答案 0 :(得分:0)

我认为您无法获得其他任何东西,因为cosmos db总是会返回一个数组来响应查询,因为可能会有0无限结果。因此您将始终获得一个顶级数组,该数组将包装所有结果(即使只有一个)