【发布时间】:2017-04-24 17:14:44
【问题描述】:
我是 neo4j 和 cypher 的新手,我需要创建图形所有边的对边,但我需要对边具有与原始边相同的类型
为了说明,(a)-[:sometype]->(b) 的反面将是 (b)-[:sometype]->(a)
我知道只需点击此命令即可轻松创建所有边缘的对面
match (a)-[]->(b) create (b)-[]->(a)
但正如我已经说过的,我需要创建的边缘具有与原始边缘相同的类型
谢谢
【问题讨论】:
-
您需要这个有什么特别的原因吗? Neo4j 可以在任一方向遍历关系。如果您确实需要这个,如果您还没有安装APOC Procedures,您可以安装它吗?它有一些可以提供帮助的动态关系创建程序。
-
强调@InverseFalcon 的观点之一:除非您的用例有非常好的理由在两个方向上具有相同的关系类型,否则您不想这样做-- 因为相同的关系可以很容易地在两个方向上遍历,这会浪费数据库存储,并且会使您的查询变得更慢和更复杂。