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