如何删除连接两个节点的边?示例:node1 -[link]-> node2
删除连接两个节点的边(node1 -[link]-> node2)的操作方法
以下是主流图数据库中删除指定边的具体操作:
Neo4j
通过Cypher语句匹配节点与对应关系后删除:
MATCH (n1)-[r:link]->(n2) WHERE n1.name = 'node1' AND n2.name = 'node2' DELETE r
说明:如果节点使用ID而非name作为唯一标识,可将n1.name = 'node1'替换为ID(n1) = 节点ID值,匹配更精准。
JanusGraph/TinkerPop Gremlin
使用Gremlin语句定位目标边并删除:
// 通过节点属性匹配 g.V().has('name', 'node1').outE('link').where(inV().has('name', 'node2')).drop() // 已知节点ID时更高效的写法 g.V('node1的ID值').outE('link').inV().hasId('node2的ID值').drop()
通用核心逻辑
- 精准定位边:通过节点的唯一标识(ID、名称等)和边的类型(
link)锁定目标边 - 执行删除:调用对应数据库的删除指令移除该边
内容的提问来源于stack exchange,提问作者Timothy Shiwprasad
相关产品推荐
相关产品推荐

