在 Cypher 中,查询节点是否具有类型 A 的边。如何显示它们具有的其他边类型?

In Cypher, nodes are queried if they have edges type A. How to display other edge type they have?

在我的图中,边有两种类型:AB。我想查询边类型为 A 的所有节点。在这些节点中,如果它们有边 B 那么它们也应该被显示。因此,例如,如果我们有 (node1)-[A]-(node2)(node3)-[A]-(node4),并且如果这 4 个节点之间有 B 条边,则只应显示它们,而不是所有其他 B 条.

我都试了:

match (n)-[r:A]-(m) 
match (n)-[s:B]-(m) 
return n,r,s,m

match (n)-[r:A]-(m),
 (n)-[s:B]-(m) 
return n,r,s,m

但其中 none 有效。

我没有使用 Neo4j 浏览器,因此需要显式查询边缘。 MATCH 的手册没有帮助。

试试这个,因为您似乎在寻找三角形

MATCH (n)-[r1:A]-(m)-[r2:A]-(k)
OPTIONAL MATCH (k)-[r3:B]-(n)