使用集合删除Neo4J节点标签?

时间:2015-12-30 14:30:03

标签: neo4j cypher labels

是否可以使用集合从节点中删除标签?类似下面的东西,它不起作用,我假设因为它试图删除" remove_labels"标签而不是将其用作要删除的标签集合。

假设所有节点都带有" label_3"还有标签" label_1"和" label_2"。

WITH ["label_1", "label_2"] as keep_labels
MATCH (n:label_3 {id: 5})
WITH filter(label IN labels(n) WHERE label NOT(IN keep_labels)) AS remove_labels
MERGE (n:label_3 {id: 5})
REMOVE n:remove_labels
RETURN n

---编辑---
修正无效&#c;'引用是复制粘贴错误。还添加了一个显式的keep_labels集合,但在我的查询中将是一个参数。

1 个答案:

答案 0 :(得分:2)

目前不支持在Cypher中动态指定标签。您必须在客户端代码中处理此问题并构建Cypher查询字符串,明确指定标签。