如何在Cosmos DB中合并两条统计SQL查询的返回结果
Cosmos DB合并两条统计查询结果实现方案
你可以通过单查询条件聚合的方式直接得到目标格式结果,无需分开执行两次查询再做合并,该方式仅消耗一次请求单元(RU),性能更优:
SELECT COUNT(CASE WHEN c.KeyData2 LIKE 'WLS_%' THEN c.Transaction_Id ELSE null END) AS Legacy, COUNT(CASE WHEN c.KeyData2 NOT LIKE 'WLS_%' THEN c.Transaction_Id ELSE null END) AS NonLegacy FROM c WHERE c.OverallStatus = 'COMPLETED' AND CONTAINS(c.Created_Date, '2021-08-11') AND c.Transaction_Set_Code = '210'
上述查询会直接返回你要求的JSON结构:
[ { "Legacy": 18753, "NonLegacy": 121862 } ]
如果你已经分开执行了两条查询,也可以通过代码手动合并结果,以下是JavaScript示例:
// 假设两次查询的返回结果分别存储在legacyRes和nonLegacyRes中 const finalResult = [ { Legacy: legacyRes[0].Legacy, NonLegacy: nonLegacyRes[0].NonLegacy } ]
内容的提问来源于stack exchange,提问作者Sheikh_Sheharyar
相关产品推荐
相关产品推荐

