【发布时间】:2018-04-11 18:29:34
【问题描述】:
所以我试图从 cosmos documentdb 数据库中查询一些数据,如下所示
这是我的数据:
{
"id": "**********",
"triggers": [
{
"type": "enter_an_area",
"trigger_identity": "***********",
},
},
{
"type": "enter_an_area",
"trigger_identity": "********",
},
},
{
"type": "exit_an_area",
"trigger_identity": "*******",
},
这是我收藏的一个文档,其中我为每个具有唯一 ID 的用户提供了一个文档,现在我要做的是计算使用特定触发器的用户数量,一个用户可能有多个相同的触发器有时,正如您在示例“enter_an_area”中看到的那样,“enter_an_area”有多个条目,但我仍然想将其算作一个条目。
我使用此查询来获取特定触发器的计数:
SELECT VALUE COUNT(1) FROM u JOIN t in u.triggers WHERE CONTAINS(t.type, "enter_an_area")
但是对于上面的示例,这将返回:2 我希望它返回 1
在 documentdb 中是否有执行此操作的查询?如果没有这样的查询,有没有办法返回没有重复的结果?因为作为一种解决方案,我认为我可以返回使用此特定触发器的 ID,但是当用户有多个触发器输入时,我会得到重复的 ID。
【问题讨论】:
标签: azure azure-cosmosdb document-database