温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

neo4j如何建关系

发布时间:2026-09-29 21:20:54 来源:亿速云 阅读:115 作者:小樊 栏目:数据库

在 Neo4j 中,“建关系”通常指在两(或多)个节点(Node)之间创建 Relationship。下面从基础到常见场景给你讲清楚。


一、基本概念

  • 节点(Node):实体,如 (:Person {name:'Tom'})
  • 关系(Relationship):有方向、有类型、可带属性
    例如:
    (:Person)-[:FRIEND]->(:Person)

二、最基础的建关系方式(CREATE)

1️⃣ 已知两个节点,直接建关系

MATCH (a:Person {name:'Tom'}), (b:Person {name:'Jerry'})
CREATE (a)-[:FRIEND]->(b)

2️⃣ 建关系并加属性

MATCH (a:Person {name:'Tom'}), (b:Person {name:'Jerry'})
CREATE (a)-[:FRIEND {since:2020}]->(b)

三、避免重复关系(MERGE)

如果关系可能已存在,用 MERGE 更安全:

MATCH (a:Person {name:'Tom'}), (b:Person {name:'Jerry'})
MERGE (a)-[:FRIEND]->(b)

带属性(仅在创建时设置):

MERGE (a)-[r:FRIEND]->(b)
ON CREATE SET r.since = 2020

四、建节点 + 建关系(一步完成)

CREATE (a:Person {name:'Tom'})
CREATE (b:Person {name:'Jerry'})
CREATE (a)-[:FRIEND]->(b)

或:

CREATE (a:Person {name:'Tom'})-[:FRIEND]->(b:Person {name:'Jerry'})

五、批量建关系(常见场景)

从 CSV 建关系

LOAD CSV WITH HEADERS FROM 'file:///friends.csv' AS row
MATCH (a:Person {name:row.from}), (b:Person {name:row.to})
MERGE (a)-[:FRIEND]->(b)

六、关系方向说明

  • Neo4j 关系是 有方向的
  • 查询时可忽略方向:
(a)-[:FRIEND]-(b)

七、查看关系

MATCH (a)-[r]->(b)
RETURN a, r, b
LIMIT 25

八、删除关系

MATCH (a)-[r:FRIEND]->(b)
DELETE r

如果你愿意,可以告诉我:

  • 你用的是 Neo4j Browser / Python / Java / Spring
  • 是 图建模阶段 还是 导入数据阶段

我可以给你更贴合的示例。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手