使用Cypher返回节点的标签

21
我如何使用Cypher查询返回节点的所有标签? 请注意,我事先不知道节点ID,我需要进行某种索引匹配来获取它。

2
如果您的节点绑定到标识符 n,则可以使用 LABELS(n) 获取其标签。这是您要查找的内容吗? - jjaderberg
1个回答

40

您可以使用labels()方法获取标签。

例如(Neo4j 2.0):

假设您已经将属性“name”索引化,并希望基于此进行搜索,以下查询将为您提供所有具有名称为“some_name”的节点及其标签:

MATCH (r) WHERE r.name="some_name" RETURN ID(r), labels(r);

如果您知道起始节点中的一个标签,那就更好了。对于某个名为“Label”的已知标签,此查询将为您提供所有节点以及与节点相关联的所有标签。

MATCH (r:Label {name:"some_name}) RETURN ID(r), labels(r);

需要更多帮助?阅读Cypher 文档!有关labels()的内容。


太好了!我一直在使用REST接口来获取这些信息,但是这个Cypher调用更好。 - joe
有用的问题和答案。你应该接受这个答案! - Pierre Henry

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接