You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Neo4j中为关系添加属性?将计算距离赋值给distance关系

解决方案

你只需要在原有查询的基础上,添加SET子句来更新distance关系的属性即可,完整的Cypher语句如下:

MATCH (u:me)-[d:distance]->(n:Hotels)
WITH
  u, n, d,
  point({longitude: u.longitude, latitude: u.latitude}) AS trainPoint,
  point({longitude: n.longitude, latitude: n.latitude}) AS officePoint,
  round(point.distance(trainPoint, officePoint)) AS travelDistance
SET d.travelDistance = travelDistance
RETURN u.name, n.name, d.travelDistance

关键说明:

  • 保留原有的MATCH和距离计算逻辑,新增SET d.travelDistance = travelDistance将计算出的距离值赋值给distance关系的travelDistance属性(你可以根据需求修改属性名,比如改成distanceValue)
  • WITH子句中需要把d(目标关系)包含进来,这样后续才能对它进行更新操作
  • 最后的RETURN语句用于验证更新结果,确认距离值已成功写入关系属性

内容的提问来源于stack exchange,提问作者Zayd Elbassri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 15:44:54