我正在使用neo4j作为我的一个项目,那个节点只有一个属性name
,我想用ID获取该节点,它已经有了ID但是当我使用时这段代码
MATCH (s:SKILLS{ID:65110}) return s
它什么都不返回,继承我的节点
如果查询错误,我该如何使用数字
查询答案 0 :(得分:106)
MATCH (s)
WHERE ID(s) = 65110
RETURN s
ID
function可以获得节点或关系的ID。这与您创建的名为id
或ID
的任何属性不同。
答案 1 :(得分:9)
警告:以下答案不正确! START should only be used when accessing legacy indexes。它是disabled in Cypher 2.2 and up。
Neo4j recommends using
WHERE ID(n) =
,并进一步说明will only require a single lookup (does not scan every node to find the matching ID)保持这个答案,以防止任何人犯同样的错误。
您 可以 使用WHERE ID(s) = 65110
,但这会检查数据库中每个节点的ID。
有一种更有效的方法:
START s=NODE(517) MATCH(s) RETURN s
答案 2 :(得分:2)
(n:User) where id(n) >=20 RETURN n
这将返回节点引用ID大于20的所有User类型的节点