2015-04-01 204 views
7

如何通过propery值获取节点?我的意思是类似的东西: 我会试着通过属性值获取节点neo4j

match (n) where has (n.name = 'Mark') return n

但它是不正确。

而且我如何找到具有最大属性值的节点。我有属性“VIEWS”的节点,我想看最大的意见节点。

回答

20

如此接近......

MATCH (n) 
WHERE n.name = 'Mark' 
RETURN n 

最好是包括节点标签,如果你有一个,这将有助于从不同类型的其他节点隔离您的节点。这样,如果您有名称属性和标签组合的索引,您将获得更好的搜索响应。例如,您可以创建索引...

CREATE INDEX ON :Person(name) 

然后用Person标签查询。

MATCH (n:Person) 
WHERE n.name = 'Mark' 
RETURN n 

或者您可以查询这样...

MATCH (n:Person {name:'Mark'}) 
RETURN n 

为了找到最欣赏的人...

MATCH (n:Person) 
RETURN n, n.views 
ORDER BY n.views desc 
LIMIT 1 

找到没有人的观看次数最多...

MATCH (n:Person) 
RETURN max(n.views)