2015-04-01 356 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)