【发布时间】:2016-07-31 09:03:18
【问题描述】:
我在 RethinkDB 表中存储了以下数据结构:
{
id: string,
parentId: string,
timestamp: number,
data: Object
}
这个数据结构形成一棵树,可以用下图来描述(白色记录代表普通的数据携带记录,红色记录的data属性等于null代表删除操作):
现在对于表中的每条记录,我希望能够计算 nextRecord。这是与当前记录最接近的时间记录。当只有一条记录指向父母时,任务似乎很简单:
1 => 2
4 => 9
5 => 6
6 => 8
...
但是当父记录被多个子记录引用时,计算这样的值变得更加困难:
2 => 3
3 => 5
7 => 11
同样是没有子引用的情况,在这种情况下结果应该是null(例如记录#8没有子记录,所以应该返回null)。
所以我不是要求编写查询本身(另一方面,这对我来说真的很棒),但至少指出我可以找到解决这个问题的方向。
提前谢谢你!
【问题讨论】:
标签: rethinkdb