如何在密码的关系名称中使用通配符

雅库布·利茨纳斯基(Jakub Licznerski)

我有这个理论图结构:

(:Car)<-[:LIKES_C]-(:Person)-[:LIKES_B]->(:Bike)

Person也有其他不包含单词LIKES的关系,例如(:Person)-[:LOVES]-(:Person)

我想编写一个密码查询,该查询将产生连接到Person具有关系的所有节点,其名称以LIKES开头

此外,我不能关系的名字更改为LIKES因为有很多节点与标签Bike,并Car根据这个帖子的Neo4j会像查询效率低下:

MATCH (p:Person)-[:LIKES]->(:Car)

它将通过同时进行搜索Cars,并Bikes随后过滤器Cars有效地提高执行时间。

有没有一种有效的方式来查询LIKES*关系?

安德烈·瓦雷尼克(Andrey Varenik)

雅各布!有一种方法可以匹配一组关系类型:

match (p:Person)-[:LIKES_C|LIKES_B]->(carOrBike)

在这种情况下,你将能够穿越两:LIKES_C:LIKES_B从关系的:Person节点。

也可以将UNWIND一系列的关系名称与apoc.cypher.run此处所述结合使用,以一次查询多个关系。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章