Cypher函数如何进行路径操作


在Neo4j中,Cypher是一种用于查询图形数据库的语言

    使用MATCH子句查找图中的路径:
MATCH (a)-[r]->(b)RETURN a, r, b

这个查询将返回所有从节点a到节点b的路径,包括关系r。

    使用WHERE子句过滤路径:
MATCH (a)-[r]->(b)WHERE r.type = 'KNOWS' AND a.name = 'Alice' AND b.name = 'Bob'RETURN a, r, b

这个查询将只返回从Alice到Bob的"KNOWS"关系路径。

    使用WITH子句处理路径:
MATCH (a)-[r]->(b)WITH a, r, b, [r.property1, r.property2] as path_propertiesRETURN a, b, path_properties

这个查询将返回节点a、b以及关系r的属性(property1和property2),并将它们名为path_properties的列表返回。

    使用CALL子句执行路径操作:
MATCH (a)-[r]->(b)WITH a, b, rCALL apoc.path.expandConfig(a, b, {properties: true}) YIELD pathRETURN path

这个查询将使用APOC库中的apoc.path.expandConfig函数扩展从节点a到节点b的所有可能路径,并返回这些路径。

    使用聚合函数处理路径:
MATCH (a)-[r]->(b)WITH a, b, COUNT(r) as num_relationshipsRETURN a, b, num_relationships

这个查询将返回节点a、b以及它们之间的关系数量。

这些示例展示了如何在Cypher中执行基本的路径操作。您可以根据需要调整查询以满足您的需求。


上一篇:Cypher函数如何进行正则表达式匹配

下一篇:Cypher子句如何进行日期处理


Cypher
Copyright © 2002-2019 测速网 www.inhv.cn 皖ICP备2023010105号
测速城市 测速地区 测速街道 网速测试城市 网速测试地区 网速测试街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!

热门搜索 城市网站建设 地区网站制作 街道网页设计 大写数字 热点城市 热点地区 热点街道 热点时间 房贷计算器