繁体   English   中英

查询具有多个相同类型关系的节点

[英]Querying for nodes with multiple relationships of the same type

我才刚刚开始学习Neo4J,我想了一个问题,到目前为止我一直在阅读中没有看到答案。

我相信一个节点有可能多次连接到具有相同关系的另一个节点。

是否可以仅返回关系边数满足某些条件的节点?

例:

朋友是一个节点。 戳是一种关系。

  • 朋友A戳了朋友B
  • 朋友A戳了朋友B
  • 朋友B戳了朋友C

我将如何查询此消息,以便仅选择“朋友A”,因为它多次戳了同一个朋友?

如果重要的话; 我将使用Java和Spring的Data Graph模块。

我假设您要使用Cypher。 谁不会,对吗?

Cypher没有等效于HAVING的SQL,因此您将不得不使用宿主语言做一些事情。 查询如下所示:

START friendA=node:person(name="Michael") 
MATCH friendA-[:POKED]->friendB 
RETURN friendB, count(*)

现在,有了映射的结果可迭代性,从最终结果中排除count(*)与您想要的不同的所有映射。

这有意义吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM