因此,在我们的Cloudant数据库中,我们存储了多个" schedule"文件,每一个都有一些相关的"事件"文档。这是一个示例模式:
Schedule:
{
"_id": "123",
"_rev": "456",
"type": "schedule",
"userId": "sampleUser"
}
Event:
{
"_id": "1234",
"_rev": "5678",
"type": "event",
"scheduleId": "123"
}
如果我们提前了解时间表的_id
,那么在单个查询中获取时间表和相关事件就足够了。我想知道的是,如果我们只知道userId
,是否可以在单个查询中执行此操作。有没有办法在单个查询中获取与userId
关联的所有计划以及与这些计划关联的所有事件?或者我们在这里做了两次查询?我查看了一些连接教程,他们没有解释它是如何可行的,但我不确定它是完全不可能的。
如果这不可能,我可以在计划文档中包含所有事件ID的数组,但这不是理想的解决方案,因为它要求我们每次新事件时都更新计划文档已添加。
答案 0 :(得分:1)
除非您能够更改数据模型并将“事件”作为“计划”文档的一部分,否则您将需要两个查询。