Graph Neo4j获取1阶节点之间的边
假设我有定义为A->B,A->D,C->A,B->C,B->D的图关系。我需要在Neo4j中得到以下子图-Graph Neo4j获取1阶节点之间的边,graph,neo4j,cypher,graph-databases,Graph,Neo4j,Cypher,Graph Databases,假设我有定义为A->B,A->D,C->A,B->C,B->D的图关系。我需要在Neo4j中得到以下子图- 获取节点的所有一级连接(indegree或outdegree),即对于节点a,它将是B、C、D 获取这些1阶节点之间的所有边。因为B,C,D是一阶连接,所以边应该是B->C,B->D 关于第一部分,我有以下疑问- MATCH (s:Node)->(d:Node) WHERE s.name = 'A' OR d.name = 'A' 我无法在同一查询中获取数据的第二部分。是否需要遍
MATCH (s:Node)->(d:Node)
WHERE s.name = 'A' OR d.name = 'A'
我无法在同一查询中获取数据的第二部分。是否需要遍历所有节点?这是一个简单的模式,表示从节点开始路径,然后转到它旁边的节点,然后其中一个可以返回到起始节点:
MATCH (A:Node {name:'A'}) WITH A
MATCH (A)--(FD1:Node)-[r]-(FD2:Node)--(A)
WHERE ID(FD1) > ID(FD2)
RETURN FD1, r, FD2
请记住,您不能指定关系的方向。为什么使用ID(FD1)>ID(F2)子句?@YashveerRana删除由于关系未定向而出现的重复项。