我正在查看MongoDB文档并找到$ aggregate框架。运算符$graphLookup允许用户执行递归搜索。假设有一个类似下面的集合:
{ "_id" : 1, "name" : "Dev" }
{ "_id" : 2, "name" : "Eliot", "reportsTo" : "Dev" }
{ "_id" : 3, "name" : "Ron", "reportsTo" : "Eliot" }
{ "_id" : 4, "name" : "Andrew", "reportsTo" : "Eliot" }
{ "_id" : 5, "name" : "Asya", "reportsTo" : "Ron" }
{ "_id" : 6, "name" : "Dan", "reportsTo" : "Andrew" }
下表提供了文档的遍历路径
{ "_id" : 5, "name" : "Asya", "reportsTo" : "Ron" }
输出生成层次结构 Asya - >罗恩 - >艾略特 - >开发
实际上有一种方法可以显示MongoDB中更复杂的图形生成的所有路径,还是我必须在客户端(编程)进行?如果是这样,我们将不胜感激。
所有路径的示例都是,如果还有两个插入,例如:
{ "_id" : 7, "name" : "Eliot", "reportsTo" : "Bill" }
{ "_id" : 8, "name" : "Bill", "reportsTo" : "Dev" }
此场景中的输出将生成两个路径。
免责声明:假设ID指的是人与人之间的关联。