首页 > 解决方案 > 使用逻辑应用在结果中查询结果

问题描述

我在 CosmosDB 中有一个 JSON 文档,看起来像这样

 { 
   "id":"1234-11111-22222-2222"
   "Feedbacks": [
       { "id": "abc"
       }
                ]
}

我想首先找到 id 大于 15 的所有文档,然后循环查找与此结果相关的所有反馈。我将如何使用 LogicApp 执行此操作?我有一个想法,这就是我到目前为止所做的:

在此处输入图像描述

在此处输入图像描述

我不确定是否必须执行另一个查询?如果是这样,这会是什么?

选择 c.Feedbacks from ...?

任何帮助或建议表示赞赏。

标签: sqlazureazure-cosmosdbcrmazure-logic-apps

解决方案


只是广告我知道逻辑,我们不能那样做。您的真正目的是获取 id>15 的所有数据并更新反馈 id。

我觉得数据工厂更适合你。

您可以使用数据流来实现这一点。创建 Cosmos DB 作为源,使用映射数据流转换来更新反馈 ID。

参考教程:使用 Azure 数据工厂复制和转换 Azure Cosmos DB (SQL API) 中的数据

更新:

我们可以做一个嵌套查询,例如: for each (document d array) // 遍历文档数组 do for each (feedback f in d.feedback) // 遍历每个文档中的反馈数组 do something with f ... done done

谢谢分享。


推荐阅读