neo4j匹配节点和关系(如果存在)

时间:2016-11-10 07:49:31

标签: neo4j graph-databases neo4j-ogm

我正在开发一个小型的社交网络应用程序,我在neo4j图db中有以下节点和关系:

  1. 用户节点
  2. 发布节点。 Post节点通过POSTED_BY关系连接到User节点,Post节点可能通过SHARING关系连接到另一个Post节点,以防帖子共享另一个帖子。
  3. 我想检索特定用户发布的所有帖子,并且如果它是一个共享(以及原始帖子的发布者),每个帖子也会获得原始帖子。

    我设法使用可选匹配获得所需信息,但我是neo4j的新手并且不确定这是否是正确的方法:

    80

    这是检索此信息的正确方法还是应该使用其他方法?

1 个答案:

答案 0 :(得分:1)

除了关系缺乏方向外,看起来还不错。

缺乏方向当然略微不言自明(即使存在隐含的方向,因为User不是POSTED_BY Post),但它也会发生变化查询的语义:因为SHARED_POST关系可以在任何方向上遍历,当然,如果是共享,你将获得原始帖子,但是如果它你也将获得所有共享是原始帖子。那不是你想说的。