Neo4J通过ID获取节点

我使用neo4j为我的项目之一,有一个节点只有一个属性作为name ,我想要使用ID获取该节点,它已经有一个ID,但是当我使用此代码

MATCH (s:SKILLS{ID:65110}) return s

它什么也没有返回,inheritance我的节点

在这里输入图像说明

如果查询是错误的,那么如何使用数字来查询它

 MATCH (s) WHERE ID(s) = 65110 RETURN s 

IDfunction可以获得节点或关系的ID。 这与您创build的任何名为idID属性不同。

警告:以下回答不正确! 只有在访问旧索引时才应使用START 。 在Cypher 2.2及以上版本中禁用 。

Neo4j build议使用WHERE ID(n) = ,并且指出它只需要一次查找(不扫描每个节点来查找匹配的ID)

保持这个答案,以防止任何人犯同样的错误。

可以使用WHERE ID(s) = 65110 ,但是这将检查数据库中每个节点的ID。

有一个更有效的方法来做到这一点:

 START s=NODE(517) MATCH(s) RETURN s 

你可以说:

 (n:User) where id(n) >=20 RETURN n 

这将返回节点引用ID超过20的Usertypes的所有节点