【问题标题】:Cosmos DB - Using Nested Query output in Where conditionCosmos DB - 在 Where 条件下使用嵌套查询输出
【发布时间】:2019-10-17 00:58:46
【问题描述】:

我在同一个 cosmos 集合中有两个 JSON 文档

JSON 1:

{
"source": "PlacedOrder"
"orderid":12345
"customerName":xxxx
}

JSON 2:

{
"orderid": "70029955",
"source": "ValidationFailure",
"_ts":1570804414
}

我尝试了以下查询,但没有得到结果

select c.orderid,c.customerName
from c
JOIN (select value t from t in c.orderid where t.source='ValidationFailure' and t._ts=1570804414)
WHERE c.source='PlacedOrder'

如何根据 JSON 2 中的订单 ID 从 JSON 1 中获取客户名称?

【问题讨论】:

    标签: azure azure-cosmosdb


    【解决方案1】:

    您需要分两步执行此操作首先,检索您要检索的订单,然后根据 orderid 发出另一个检索客户的查询。

    如果您提前知道 orderid,您甚至可以使用 Task.WhenAll 之类的方式并行发出这些查询。另一种选择是在存储过程中使用相同的逻辑。

    【讨论】:

    • 这里的问题是我不确定订单 Ids 。它必须是获取订单 id 的动态方式。获取失败订单的 orderid 并获取客户详细信息。加入两个查询更好,因为它用于报告
    猜你喜欢
    • 2021-12-14
    • 2019-04-21
    • 2019-11-20
    • 2019-01-25
    • 1970-01-01
    • 1970-01-01
    • 2019-01-21
    • 2021-05-22
    • 1970-01-01
    相关资源
    最近更新 更多