我有一个包含多个节点 ID 的数组要删除。我能找到的每个 Cypher 示例要么删除一个节点,要么删除所有节点。如何在单个查询中删除与一组 ID 匹配的节点?
像这样的东西...... (伪代码):
MATCH (n:Node) WHERE (n.id in ['id_a', 'id_b']) DELETE n;
Run Code Online (Sandbox Code Playgroud)
您可以使用IN
列表运算符:
如果id
是一个属性:
WITH [1,2,3,4] AS ids
MATCH (n) WHERE n.id IN ids
DETACH DELETE n;
Run Code Online (Sandbox Code Playgroud)
如果id
你指的是内部节点 id:
WITH [1,2,3,4] AS ids
MATCH (n) WHERE id(n) IN ids
DETACH DELETE n;
Run Code Online (Sandbox Code Playgroud)