2012-06-05 34 views
2

在我的应用程序有类/像节点:
-person
-activity
-company

我可以创造之间的关系:
- 人与公司
- 公司和活动
- 活动和人 - 人和人
- 公司和公司

所以。一个特定的活动可能与一个人和一个公司有关。该公司主要是根。但是没有真正的等级。它更像一个网状结构。

(我知道如何创建的关系等等。我已经看到了一些教程。:))

现在。我想要获得与特定节点的所有节点直接相关的关系。 我不想通过关系类型获取相关数据。我想(如果可能的话)一个查询,它读取所有的关系和相应的节点。
而第二个要求:当我检索到所有相关的关系和节点时,我想获得这些节点之间的关系(如果存在的话)!

所以这将是非常酷的解决这个2查询!

有什么建议吗?

谢谢!Neo4jClient获取所有被引用的节点

回答

0

如何像

start company = node(2) match company-[?:employs]-> person return company, person 

见docs.neo4j.org/chunked/snapshot/cypher-query-lang.html了解详情。

否则,您可以查找索引中的公司,人员等,例如,

start comp=node:Companies(name='Cocal Cola'), person=node:Persons(name='Bob') ... 

这是你在找什么?

+0

第一个查询看起来不错!像这样的查询“节点(*)匹配n- [r?] - > m返回n,类型(r),m”返回所有连接的节点。我不必查询每种关系类型。我也看到了“子节点”之间的关系。例如:A和B连接到C.并且这些子节点(A,B)之间也存在关系。 – user1401611

+0

现在我只是不知道如何在neo4jclient中实现它。因为节点A,B和C以及这些关系是不同的类别。当我获取数据时,我不想将节点转换为相应的类/类型....:/ – user1401611

+0

不确定,可能需要联系库作者? –