图遍历每个节点的网络计数
graph traversal with counts in network for each node
这可能是一个基本问题,但是通过稀疏的文档我无法弄清楚如何做到这一点。我是 orientdb 和一般图形的新手。
我有简单的图表。
用户 - 顶点
hasInAddressBook - 边缘
介绍
用户->hasInAddressBoom->用户
用户->introducedToNetwork->用户
我要查找的内容如下:
给定一个用户名 -> 他们的地址簿中有多少用户以及姓名
给定一个用户名 -> 他们介绍了谁而不考虑深度
示例数据:
约翰 -> hasInAddressBook -> Doe
约翰 -> hasin 地址簿 -> 苏珊
约翰 -> hasInAddressBook > 露西
约翰 -> hasInAddressBook -> 史密斯
约翰 -> hasInAddressBook -> john1
john -> introducedToNetowrk -> Doe
Doe -> hasinAddressbook -> susan
Doe -> hasInAddressBook > lucy
Doe -> hasInAddressBook -> New1
Doe -> hasInAddressBook -> John
Doe -> introducedToNetwork -> susan
Doe -> introducedToNetwork -> Smith
Doe -> introducedToNetwork -> New1
现在我需要的是:
Johns Network 的总人数:结果应该是 4 ,因为 john 介绍了 Doe,Doe 介绍了 3 个人 1+3 = 4
Doe 网络中的总人数:= 3
John 的通讯录总数:5
Doe 的通讯录总数:4
深度没有限制。
什么是 SQL/node.js 代码,我将使用它来获得上述结果(除了计数,我还需要每个顶点的 indiv..
感谢您的帮助。
SELECT name,out("hasInAddressBoom").size() as hasInAddressBoom,sum($p.size(),-1) as introducedToNetwork FROM User
LET $p = ( SELECT FROM (TRAVERSE out("introducedToNetwork") FROM $parent.$current))
这是我从 Studio 执行查询时的屏幕
这可能是一个基本问题,但是通过稀疏的文档我无法弄清楚如何做到这一点。我是 orientdb 和一般图形的新手。
我有简单的图表。
用户 - 顶点 hasInAddressBook - 边缘 介绍
用户->hasInAddressBoom->用户 用户->introducedToNetwork->用户
我要查找的内容如下:
给定一个用户名 -> 他们的地址簿中有多少用户以及姓名 给定一个用户名 -> 他们介绍了谁而不考虑深度
示例数据: 约翰 -> hasInAddressBook -> Doe 约翰 -> hasin 地址簿 -> 苏珊 约翰 -> hasInAddressBook > 露西 约翰 -> hasInAddressBook -> 史密斯 约翰 -> hasInAddressBook -> john1
john -> introducedToNetowrk -> Doe
Doe -> hasinAddressbook -> susan
Doe -> hasInAddressBook > lucy
Doe -> hasInAddressBook -> New1
Doe -> hasInAddressBook -> John
Doe -> introducedToNetwork -> susan
Doe -> introducedToNetwork -> Smith
Doe -> introducedToNetwork -> New1
现在我需要的是:
Johns Network 的总人数:结果应该是 4 ,因为 john 介绍了 Doe,Doe 介绍了 3 个人 1+3 = 4
Doe 网络中的总人数:= 3
John 的通讯录总数:5
Doe 的通讯录总数:4
深度没有限制。
什么是 SQL/node.js 代码,我将使用它来获得上述结果(除了计数,我还需要每个顶点的 indiv..
感谢您的帮助。
SELECT name,out("hasInAddressBoom").size() as hasInAddressBoom,sum($p.size(),-1) as introducedToNetwork FROM User
LET $p = ( SELECT FROM (TRAVERSE out("introducedToNetwork") FROM $parent.$current))
这是我从 Studio 执行查询时的屏幕